首页 > 解决方案 > Numpy 矩阵展平为矩阵

问题描述

我在将以下矩阵扁平化为数组时遇到问题

np.matrix([[1],
        [2],
        [3]])

更一般地说,这个矩阵将是n,1形状

目标是让它成为一种3,形式,[1, 2, 3]但我发现这很困难。我能找到的每个操作都返回一个矩阵或不起作用。

x = np.matrix([[1],
        [2],
        [3]])
x.flatten()
>>>matrix([[1, 2, 3]])
x.ravel()
>>>matrix([[1, 2, 3]])
x.ravel()[0,:]
>>>matrix([[1, 2, 3]])
np.reshape(x, 3)
>>>matrix([[1, 2, 3]])
x.flatten()[0]
>>>matrix([[1, 2, 3]])

如何将这一行矩阵转换为向量?

标签: pythonnumpy

解决方案


您需要将其转换为数组。根据定义,矩阵对象是二维的。

np.array(x).flatten()

或者,正如@hpaulj 所提到的,矩阵对象具有AA1定义了将返回数组对象(扁平化为A1

x.A1

推荐阅读