Python中使用.mean计算均值时如何排除前若干行?
排除前N行后计算均值的实现方法
针对 Pandas DataFrame/Series
如果你的数据是 Pandas 的 DataFrame 或 Series,只需通过切片操作跳过前 N 行,再调用 .mean() 方法即可:
- 示例代码:
import pandas as pd # 构造示例数据集 data = {'col1': [1, 2, 3, 4, 5], 'col2': [6, 7, 8, 9, 10]} df = pd.DataFrame(data) # 排除前2行,计算所有列的均值 filtered_mean = df[2:].mean() print(filtered_mean) # 只针对某一列(比如col1)排除前2行后计算均值 col1_filtered_mean = df['col1'][2:].mean() print(col1_filtered_mean) - 说明:
df[N:]会返回从第 N 行(索引从 0 开始)到数据集末尾的子集合,后续的.mean()仅基于这些行计算均值。
针对 Numpy 数组
如果使用 Numpy 数组,逻辑类似,通过切片跳过前 N 行后调用 .mean():
- 示例代码:
import numpy as np arr = np.array([[1,6], [2,7], [3,8], [4,9], [5,10]]) # 排除前2行,按列计算均值(axis=0);若按行计算则设axis=1 filtered_mean = arr[2:].mean(axis=0) print(filtered_mean)
内容的提问来源于stack exchange,提问作者David
相关产品推荐
相关产品推荐

