答案 0 :(得分:0)
尝试检查列dtypes,sum仅用于数值。
例如,你有以下df:
df=pd.DataFrame({'V1':[1,2,3],'V2':['A','B','C'],'KEY':[1,2,2]})
df.dtypes
Out[159]:
KEY int64
V1 int64
V2 object
dtype: object
然后你groupby
键并为整个数据框执行sum
它只会返回数字列的结果
df.groupby('KEY').sum()
Out[160]:
V1
KEY
1 1
2 5
如果你需要字符串类型加入,你可以
df.groupby('KEY',as_index=False).apply(lambda x : x.sum())
Out[164]:
KEY V1 V2
0 1 1 A
1 4 5 BC