我正在寻找一种解决方案来删除我的数据框中的重复列索引 - 我需要做的是逐行添加重复列中的值,然后仅保留这些列中的 1 个具有总和值
df = pd.DataFrame(np.array([[0,0,0,1,0,0,0], [0,1,0,0,0,0,0],
[0,0,0,0,0,0,1]]), columns=[1,1,2,2,2,3,3], index=[1,2,3])
1 1 2 2 2 3 3
1 0 0 0 1 0 0 0
2 0 1 0 0 0 0 0
3 0 0 0 0 0 0 1
应该变成
1 2 3
1 0 1 0
2 1 0 0
3 0 0 1
最佳答案
简单地按列分组:
df.groupby(df.columns, 1).sum()
1 2 3
1 0 1 0
2 1 0 0
3 0 0 1
或者如@user2285236 所指出的
df.groupby(axis=1, level=0).sum()
关于python - 从 Pandas 数据框中删除重复的列索引,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/51695171/