如何在 pandas 中添加特定行(带有示例)
您可以使用以下方法来查找 pandas DataFrame 中特定行的总和:
方法一:通过索引添加特定行
#sum rows in index positions 0, 1, and 4 df. iloc [[0, 1, 4]]. sum ()
方法2:通过标签添加特定行
#sum rows with index labels 'A', 'B', and 'E' df. loc [['A', 'B', 'E']]. sum ()
以下示例展示了如何在实践中使用以下 pandas DataFrame 的每种方法:
import pandas as pd #createDataFrame df = pd. DataFrame ({' points ': [28, 17, 19, 14, 23, 26, 5], ' rebounds ': [5, 6, 4, 7, 14, 12, 9], ' assists ': [10, 13, 7, 8, 4, 5, 8]}) #set indexes df = df. set_index ([pd. Index (['A', 'B', 'C', 'D', 'E', 'F', 'G'])]) #view DataFrame print (df) points rebound assists A 28 5 10 B 17 6 13 C 19 4 7 D 14 7 8 E 23 14 4 F 26 12 5 G 5 9 8
示例 1:按索引计算特定行的总和
以下代码展示了如何为 DataFrame 中的每一列添加索引值为 0、1 和 4 的行的值:
#sum rows in index positions 0, 1, and 4
df. iloc [[0, 1, 4]]. sum ()
points 68
rebounds 25
assists 27
dtype: int64
从结果我们可以看出:
- 点列的索引值为 0、1 和 4 的行的总和为68 。
- 反弹列的索引值为 0、1 和 4 的行的总和为25 。
- 辅助列索引值为 0、1 和 4 的行的总和为27 。
另请注意,您可以使用以下语法对特定范围的行求和:
#sum rows in index positions between 0 and 4
df. iloc [0:4]. sum ()
points 78
rebounds 22
assists 38
dtype: int64
从输出中,我们可以看到 DataFrame 中每一列的索引值在 0 到 4 之间(不包括 4)的行的总和。
示例 2:按标签添加特定行
以下代码展示了如何对 DataFrame 中每列具有索引标签“A”、“B”和“E”的行的值求和:
#sum rows with index labels 'A', 'B', and 'E' df. loc [['A', 'B', 'E']]. sum () points 68 rebounds 25 assists 27 dtype: int64
从结果我们可以看出:
- 点列的索引值为 ‘A’、’B’ 和 ‘E’ 的行的总和为68 。
- 反弹列的索引值为 ‘A’、’B’ 和 ‘E’ 的行的总和为25 。
- 辅助列的索引值为 ‘A’、’B’ 和 ‘E’ 的行的总和为27 。
其他资源
以下教程解释了如何在 pandas 中执行其他常见操作:
如何在 Pandas 中运行 SUMIF 函数
如何在 Pandas 中执行 GroupBy 求和
如何根据 Pandas 中的条件对列求和