python - Pandas 行总和

标签 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

最佳答案

问题是您的列不是数字,因此值是串联的。

首先尝试通过 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/

相关文章:

python - Numpy 指数无法正常工作

python - 如何使用 .whl 文件调用 pyspark 代码?

python - 加载大对象后测量堆大小的增加

python - 遍历每一行并增加 csv 文件中与特定研究人员相关的术语的计数

python - 将 Flask 上传的文件读取到 pandas 数据框中时找不到文件

python - 从linux中的 Pandas 数据框列中减去日期

python - ZODB不释放硬盘空间

python - Yellowbrick:增加 Yellowbrick 生成的图表上的字体大小

python - 如何启用Dataset pipeline的分布式读取和消费

mysql - 接口(interface)错误: 2013: Lost connection to MySQL server during query