数组数组的平均值

Posted

技术标签:

【中文标题】数组数组的平均值【英文标题】:mean from array of arrays 【发布时间】:2020-12-15 16:39:37 【问题描述】:

我有 10 个 (1000,) 形状的数组,我正在尝试计算所有 10 个数组中第一个元素的平均值。 当我打印array_name[20] 时,每个数组的第 10 个元素被打印出来,我看到以下输出:

1 2 5 6 ...

但是,当我执行np.mean(array_name[20]) 时,我看到再次打印相同的值,但现在以浮点格式显示

1.0 2.0 5.0 6.0 ...

在这种情况下,我如何计算列平均值?

【问题讨论】:

np.average(list_of_arrays, axis=0). np.mean 有一个可选的 axis 参数,您在这种情况下需要此参数 我已经尝试过axis=0,但即使这样也行不通。当我尝试 print(type(array_name)) 时,输出是 你的array_name是什么形状的?它是单个二维数组还是有一组单独的数组? 请提供minimal reproducible example。 【参考方案1】:

如果您的array_name 的形状为(10,1000)

array_name.mean(0)

如果您有一个单独数组的列表,每个数组的形状为(1000,)

np.stack(list_of_arrays).mean(0)

一个玩具例子:

X = np.random.randint(0,10,(3,4))
#[[4 3 0 9]
# [8 3 0 1]
# [6 6 6 1]]
X.mean(0)
#[6.         4.         2.         3.66666667]

【讨论】:

以上是关于数组数组的平均值的主要内容,如果未能解决你的问题,请参考以下文章

如何在 PySpark 中找到数组数组的平均值

查找整数数组的平均值

python求一组数组最大值,最小值,平均值

java利用数组求平均成绩

如何找到numpy数组的每两行的平均值

基于 2D 数组的 3D numpy 切片的平均值