首页 >后端开发 >Python教程 >如何对 Pandas 中的特定 DataFrame 行求和?

如何对 Pandas 中的特定 DataFrame 行求和?

Linda Hamilton
Linda Hamilton原创
2024-11-10 07:47:02218浏览

How to Sum Specific DataFrame Rows in Pandas?

如何对 Pandas 中特定列的 DataFrame 行求和

对于给定的 DataFrame,可能需要计算各个值的总和特定行。在尝试通过 df[['a', 'b', 'd']].map(sum) 实现此目的时,您可能会遇到问题。

此任务的适当操作涉及使用 sum()轴=1。此操作计算每行的总和,忽略非数字列。为了确保准确性,建议指定 numeric_only=True,尤其是在 Pandas 2.0 及更高版本中。

例如,考虑包含列 'a'、'b'、'c' 和 'd' 的 DataFrame ,其中 'c' 是非数字列:

df = pd.DataFrame({'a': [1, 2, 3], 'b': [2, 3, 4], 'c': ['dd', 'ee', 'ff'], 'd': [5, 9, 1]})

要计算列 'a' 的总和, 'b' 和 'd',我们可以使用:

df['e'] = df.sum(axis=1, numeric_only=True)

这将添加一个列 'e',其中包含所需列的总和。

如果您希望对特定列求和列同时排除其他列,您可以指定列列表并使用以下命令删除任何不需要的列col_list.remove(column_name).

col_list = list(df)
col_list.remove('d')
df['e'] = df[col_list].sum(axis=1)

这将使用指定列的总和创建一个新列“e”。

以上是如何对 Pandas 中的特定 DataFrame 行求和?的详细内容。更多信息请关注PHP中文网其他相关文章!

声明:
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn