Python中如何计算每行均值

Python中如何计算每行均值

作者:Rhett Bai发布时间:2026-01-07阅读时长:0 分钟阅读次数:5

用户关注问题

Q
怎样在Python中快速计算二维数组每行的平均值?

我有一个二维数组,想要计算每一行的平均值,Python中有什么高效的方法吗?

A

使用NumPy计算二维数组每行均值

可以使用NumPy库的mean函数,指定axis=1参数来计算每一行的平均值。例如:
import numpy as np
arr = np.array([[1, 2, 3], [4, 5, 6]])
row_means = np.mean(arr, axis=1)
print(row_means) # 输出:[2. 5.]

Q
如何用Python原生代码计算每行的平均数?

如果不使用任何外部库,如何用Python内置功能来计算二维列表中每行的均值?

A

使用列表推导式和内置函数计算行均值

可以通过遍历二维列表,对每行使用sum()函数除以该行长度计算平均值。示例代码:
matrix = [[1,2,3], [4,5,6], [7,8,9]]
row_means = [sum(row)/len(row) for row in matrix]
print(row_means) # 输出:[2.0, 5.0, 8.0]

Q
处理包含缺失值的数据时,如何计算每行的均值?

当数据中有None或NaN值时,用Python计算每行均值需要注意什么?

A

过滤缺失值后计算每行的平均数

计算时应先忽略缺失值,可以在计算平均数时跳过None或NaN。使用NumPy时,可以用np.nanmean函数处理NaN;用纯Python可用列表推导过滤非数值项。例如:
import numpy as np
arr = np.array([[1, np.nan, 3], [4, 5, np.nan]])
row_means = np.nanmean(arr, axis=1)
print(row_means) # 输出:[2.0, 4.5]