熊猫总数超过行数

时间:2018-03-15 10:17:57

标签: python pandas

我有一个数据框

id|number
1|1
1|0
1|1

我希望新列中的数字总和如下:

id|number|sum
1|1|2
1|0|2
1|1|2

我正在使用:

df['sum'] = df['number'].sum()

但输出为:

id|number|sum
1|1|101
1|0|101
1|1|101

1 个答案:

答案 0 :(得分:4)

您的列不是数字存在问题,因此连接值。

首先尝试通过astype将列转换为integer

df['sum'] = df['number'].astype(int).sum()

..如果失败,因为某些非数字值使用to_numericerrors='coerce'将其转换为NaN s:

df['sum'] = pd.to_numeric(df['number'], errors='coerce').sum()