当前位置:  开发笔记 > 编程语言 > 正文

执行pandas.DataFrame.groupby()。sum()时保留非数字列

如何解决《执行pandas.DataFrame.groupby()。sum()时保留非数字列》经验,为你挑选了0个好方法。

在执行pandas.DataFrame.groupby()。sum()时,可以保留非数字列(第一个出现的值)吗?

例如,我有一个这样的DataFrame:

df = pd.DataFrame({'A' : ['aa1', 'aa2', 'aa1', 'aa2'],'B' : ['bb1', 'bbb1', 'bb2', 'bbb2'],'C' : ['cc1', 'ccc2', 'ccc3', 'ccc4'],'D' : [1, 2, 3, 4],'E' : [1, 2, 3, 4]})
>>> df
     A     B     C  D  E
0  aa1   bb1   cc1  1  1
1  aa2  bbb1  ccc2  2  2
2  aa1   bb2  ccc3  3  3
3  aa2  bbb2  ccc4  4  4
>>> df.groupby(["A"]).sum()
     D  E
A        
aa1  4  4
aa2  6  6

以下是我想要获得的结果:

     B    C    D  E
A        
aa1  bb1  cc1  4  4
aa2  bbb1 ccc2 6  6

请注意,列BC 的值是每个组键的第一个关联的B值和C值。

推荐阅读
女女的家_747
这个屌丝很懒,什么也没留下!
DevBox开发工具箱 | 专业的在线开发工具网站    京公网安备 11010802040832号  |  京ICP备19059560号-6
Copyright © 1998 - 2020 DevBox.CN. All Rights Reserved devBox.cn 开发工具箱 版权所有