使用python汇总多索引表中的行值

时间:2016-11-22 23:21:04

标签: python pandas

我尝试获得' 1'的所有出现总和的额外列(总计)。来自下面的数据框。 Dataframe具有多索引列(ID,效果和持续时间)。

ID  Effect  Duration    X1  X2  X3  
1888    High    5   1   0   1
1313    High    10  0   1   0
3455    Low 20  1   0   0

我的cmd:

df['Total'] = df[df.columns].sum(1)

这给了我一个意想不到的价值,总计'列。

获得输出:

ID  Effect  Duration    X1  X2  X3  Total   
1888    High    5   1   0   1   11
1313    High    10  0   0   0   0
3455    Low 20  1   1   1   111

期望的输出:

ID  Effect  Duration    X1  X2  X3  Total   
1888    High    5   1   0   1   2
1313    High    10  0   0   0   0
3455    Low 20  1   1   1   3

如何使用python获取所需的输出?谢谢

1 个答案:

答案 0 :(得分:2)

您的列是字符串而不是整数。在执行操作之前首先将列转换为适当的类型:

valueChanged