繁体   English   中英

熊猫有条件合并两行

[英]Pandas merge two rows with condition

我想知道是否有一种方法可以对行进行分组,然后对条件聚合组进行分组。 谢谢
例如,对于colA为A,则应将第二个A的colB设置为test1并求和colC

colA colB colC
A   test1  5
A   None   6
B   test1  4
C   test1  5
C   test3  4
D   test4  5
D   None   4

预期结果

colA colB colC
A   test1  11
B   test1  4
C   test1  5
C   test3  4
D   test4  9

IIUC,您可以使用分组和填充,然后再次分组和求和

df['colB'] = df.groupby('colA').colB.ffill().bfill()
df.groupby(['colA','colB'], as_index = False).sum()

    colA    colB    colC
0   A       test1   11
1   B       test1   4
2   C       test1   5
3   C       test3   4
4   D       test4   9

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM