#python #pandas
#python #pandas
Вопрос:
Предположим, у меня есть
df = pd.DataFrame({'A': [1,2,3], 'B': [1,2,1]})
df._metadata = "name"
df.name = "The Name"
groups = df.groupby(by="B")
for id, group in groups:
print(group.name)
print
Функция выдаст AttributeError
.
Теперь мне нужно было бы каким-то образом передать метаданные каждой отдельной группе. Как это можно сделать?
Ответ №1:
Вы должны использовать это обозначение ( df['COLNAME'] = 'VALUE'
) для добавления новых столбцов:
df = pd.DataFrame({'A': [1,2,3], 'B': [1,2,1]})
df['_metadata'] = "name"
df['name'] = "The Name"
groups = df.groupby(by="B")
for id, group in groups:
print(group.name)
Вывод:
0 The Name
2 The Name
Name: name, dtype: object
1 The Name
Name: name, dtype: object
Ответ №2:
Вы все еще можете получить к нему доступ df
, нет?
# ...
for id, group in groups:
print(df.name)
Вы также можете назначить каждой группе, если вам нужно это сделать по какой-либо причине:
# ...
for id, group in groups:
group.name = df.name