我有631列,我想按它们中的2列进行分组,并对除我要的sum()
以外的所有其他列进行max()
的汇总。 / p>
这是与熊猫,python,jupyter笔记本一起使用的:
merged_df.groupby(['USER_ID','month']).agg({merged_group.iloc[:,0:630]:'sum',
'convierte':'max'})
这不起作用,因为它显示:
'TypeError:'DataFrame'对象是可变的,因此不能被散列'
答案 0 :(得分:0)
在创建聚合字典时,您将DataFrame设置为键。 DataFrames是可变的,因此对此有所抱怨。您的字典需要{'col_name' : 'sum'}
:
d = {x: 'sum' for x in merged_group.columns[0:630]}
d['convierte'] = 'max'
merged_df.groupby(['USER_ID', 'month']).agg(d)