Может ли функция фильтра использоваться с функцией groupby? - PullRequest
1 голос
/ 16 января 2020

У меня есть такой тип фрейма данных, который состоит из 100 вопросов

|Date|QID|Time_1|Answer_1|Time_2|Answer_2|Time_3|Answer_3|
|1/12|001|20    |  A     |  30  |   A    |  34  |   D    |
|1/12|001|22    |  A     |  10  |   A    |  12  |   D    |
|1/12|002|27    |  B     |  40  |   A    |  45  |   D    |
|1/12|002|25    |  A     |  60  |   C    |  23  |   D    |

Итак, я хочу описательную статистику c за такое время, как макс, мин, среднее

Я использую этот код:

df.groupby('QID')["Time_1","Time_2"].agg(['min','max', 'mean'])

И я получаю этот вывод:

       Time_1      Time_2
    min max mean min max mean
QID                     
001 20  22  21   10  30   20
002 25  27  26   40  60   50

Но так как у меня есть больше данных, я хочу использовать этот код и получаю ошибку.

df_sample.groupby('QID')[df_sample.filter(like='Time')].agg(['min','max', 'mean'])

TypeError: 'DataFrame' objects are mutable, thus they cannot be hashed

Кто-нибудь знает какой-нибудь другой или простой способ? Спасибо

...