使用pandas折叠重复的行

Ste*_*reo 2 python pandas

我有一个具有重复列名称的数据框.我想将所有相同的条目折叠成一个条目.

数据的csv数据是,

id,col1,col2,col1,col2
'a',1,0,1,0
'b',0,1,1,0
'c',1,0,0,0
Run Code Online (Sandbox Code Playgroud)

我要找的结果是,

id,col1,col2
'a',2,0
'b',1,1
'c',1,0
Run Code Online (Sandbox Code Playgroud)

我想总结一下这些专栏.

我是熊猫的新手,似乎无法找到如何正确聚合值.请注意,我有大约4000列.

jez*_*ael 6

您可以groupby按列名称和聚合使用sum:

print (df.groupby(level= 0, axis=1).sum())
   col1  col2   id
0     2     0  'a'
1     1     1  'b'
2     1     0  'c'
Run Code Online (Sandbox Code Playgroud)