Ссылка на docs : "Атрибут groups - это dict, ключами которого являются вычисленные уникальные группы, а соответствующими значениями являются метки осей, принадлежащих каждой группе"
Вам может быть интересно посмотреть на .agg()
, например:
df = pd.DataFrame([['Person A', 2, 3, 4],
['Person B', 3, 2, 1],
['Person C', 5, 7, 5],
['Person A', 3, 4, 9],
['Person C', 8, 3, 2]],
columns=['Person','Val 1','Val 2','Val 3'])
Дает следующий фрейм данных:
Person Val 1 Val 2 Val 3
0 Person A 2 3 4
1 Person B 3 2 1
2 Person C 5 7 5
3 Person A 3 4 9
4 Person C 8 3 2
Затем выполните groupyby
и agg
:
df.groupby('Person').agg({'Val 1': 'sum', 'Val 2': 'mean', 'Val 3': 'count'})
Дает:
Val 1 Val 2 Val 3
Person
Person A 5 3.5 2
Person B 3 2.0 1
Person C 13 5.0 2
Здесь вы можете просто передать словарь в agg
, который определяет операции, которые вы хотели бы выполнить в каждой группе для определенного столбца.