我有一个数据框
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
最佳答案
问题是您的列不是数字,因此值是串联的。
首先尝试通过 astype
将列转换为 integer
:
df['sum'] = df['number'].astype(int).sum()
.. 如果因为一些非数值使用 to_numeric
而失败使用 errors='coerce'
将它们转换为 NaN
:
df['sum'] = pd.to_numeric(df['number'], errors='coerce').sum()
关于python - Pandas 行总和,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/49296824/