Печать содержимого объекта groupby - PullRequest
0 голосов
/ 15 февраля 2019

У меня есть таблица типа

fruit       day
---------------------
apple       Mon
apple       Mon
apple       Tue
banana      Tue

Я хочу сгруппировать по фруктам и иметь уникальные дни в списке и еще один столбец для длины списка.Я знаком с тем, как делать групповые операции, но не уверен, как получить эти уникальные значения в списке и получить его длину.Ищу результат как

fruit     day_list    count
apple     [Mon, Tue]  2 
banana    [Tue]       1

Ответы [ 2 ]

0 голосов
/ 15 февраля 2019

Вы можете сделать две агрегации в столбце дня (уникальные для уникальных значений и nunique для чисел в уникальных значениях).

df.groupby('fruit')['day'].agg(['unique', 'nunique'])

Output:
            unique  nunique
fruit                      
apple   [Mon, Tue]        2
banana       [Tue]        1
0 голосов
/ 15 февраля 2019

Проверка с groupby и unique + nunique

df.groupby('fruit').day.agg(['unique','nunique']).reset_index()
Out[242]: 
    fruit      unique  nunique
0   apple  [Mon, Tue]        2
1  banana        [Tu]        1
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...