我有一个熊猫数据框,如下所示:
我有几列具有相同的名称。我想将这些列合并为一个,然后对它们中的值求和。例如,在第一行中,foot作为列名出现5次。我想将这些5与值的总和(1)合并到一英尺列中。
对于上面的数据框,我希望将其合并为:
finger foot forearm glute groin
0 1 0 0 0
0 0 0 0 0
0 0 0 0 0
0 0 0 0 0
0 0 0 0 0
本质上,将具有手指的5列合并为带有标题指的一列,并且该行中所有项目的总和为0。类似地,将具有脚的六列合并为称为foot的一列,并将所有该特定行中的6列为1。我想对所有列执行此操作,并让具有相同列名的每个项目的总和。我该怎么办?
这是一个例子
df=pd.DataFrame({'col1':[1,2],'col2':[2,3]})
df=pd.concat([df,df],axis=1)
print(df)
col1 col2 col1 col2
0 1 2 1 2
1 2 3 2 3
new_df=df.groupby(level=0,axis=1).sum()
print(new_df)
col1 col2
0 2 4
1 4 6
本文收集自互联网,转载请注明来源。
如有侵权,请联系[email protected] 删除。
我来说两句