计算numpy数组中每个2d数组的平均值

时间:2020-08-20 06:16:16

标签: python python-3.x numpy multidimensional-array numpy-ndarray

我有一个如下的numpy数组:

b = numpy.array([[[1,2,3], [4,5,6]], [[1,1,1],[3,3,3]]])
print(b)
[[[1 2 3]
  [4 5 6]]

 [[1 1 1]
  [3 3 3]]]

现在我将不计算数组中每个二维数组的平均值。例如

numpy.mean(b[0])
>>> 3.5
numpy.mean(b[1])
>>> 2.0

如何在不使用for循环的情况下执行此操作?

2 个答案:

答案 0 :(得分:2)

我认为这将为您带来预期的输出

通过在axis-see doc for more about axis param中传递多重暗淡效果

b.mean(axis=(1,2))
array([3.5, 2. ])

答案 1 :(得分:0)

np.mean()可以输入轴的参数,因此根据您的用途,您可以执行以下任一操作

print("Mean of each column:")
print(x.mean(axis=0))
print("Mean of each row:")
print(x.mean(axis=1))