numpy获取2D数组而不是1D数组

时间:2018-07-23 12:24:24

标签: arrays numpy

我有一个numpy的2D数组(3x2)。

my_array = np.array([[1,2],[3,4],[5,6]])
my_array.shape

(3,2)

然后我想要每一行的平均值,所以我就这样做:

my_average = np.mean(my_array, axis=1)
my_average.shape

(3,)

my_average是一维数组(有意义),但我希望它的形状为(1,3)(或甚至为(3,1),以便我可以对其进行转置),换句话说,a维度之一为1的2D数组。

我无法转置一维数组,它们保持不变:

np.transpose(my_average)

array([1.5, 3.5, 5.5])

我当然可以创建一个新数组,并使用my_average填充它

my_average_2 = np.array(np.transpose([my_average]))
my_average_2.shape

(3,1)

但是,这需要将my_average作为列表传递,转置并填充到另一个变量中。

在某个方向上求向量的平均值是否容易?

因此,如果我通过axis = 0求平均值,我想要一个(1,3)数组,如果我通过axis = 1求平均值,我想要一个(3,1)数组

谢谢

0 个答案:

没有答案
相关问题