如何计算Pandas DataFrame某列指定行范围的平均值?
计算Pandas DataFrame中Age列第5至第8行的平均值
针对你给出的DataFrame,第5至第8行对应索引5到8(Age值依次为6、5、1、13),以下是几种简洁的实现方法:
方法1:基于索引标签切片(loc)
直接通过索引范围选中目标列的指定行,再调用平均值方法:
import pandas as pd # 构造示例DataFrame df = pd.DataFrame({ 'Name': ['x', 'y', 'z', 'p', 'q', 'r', 's', 't', 'u', 'v'], 'Age': [5, 7, 2, 9, 12, 6, 5, 1, 13, 10] }) # 计算索引5-8的Age列平均值 average = df['Age'].loc[5:8].mean() print(average) # 输出:6.25
方法2:基于位置切片(iloc)
如果按行的位置(从0开始计数)选取,iloc遵循左闭右开规则,需将结束位置设为9以包含第8行:
average = df['Age'].iloc[5:9].mean() print(average) # 输出:6.25
关键说明
loc:匹配索引标签,切片5:8会包含索引5、6、7、8的所有行iloc:匹配行的位置序号,切片5:9对应第5到第8个位置的行
内容的提问来源于stack exchange,提问作者blahahaaahahaa
相关产品推荐
相关产品推荐

