DataFrame имеет две группы столбцов "grps" и значения "vals":
df = pd.DataFrame({'grps': list('aaabbcaabcccbbc'),
'vals': [12,345,3,1,45,14,4,52,54,23,235,21,57,3,87]})
для каждой группы, мне нужно найти сумму трех самых больших значений. Я должен закончить с кадром данных следующим образом:
grps
a 409
b 156
c 345
Я пробовал это, но это не работает:
df.groupby('grps').nlargest(3, 'vals').sum()