Pandas数据帧组导致丢弃列

时间:2018-04-27 01:36:10

标签: pandas pandas-groupby

我有一个pandas数据框,需要按文本列分组才能获得该列中重复值的总和。但是当我运行groupby方法时,它会神秘地丢弃许多列。任何人都可以帮我吗?

Problem with groupby

1 个答案:

答案 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