猿问

numpy 行/列到一维向量?

我有行/列向量:


row = np.r_['r', [1, 2]]

col = np.r_['c', [1, 2]]

我想将它们转换为一维数组,相当于


np.array([1, 2])

我试过了ravel, flatten, squeeze,但它们都返回原始数组(二维数组)。


我的问题是


他们为什么不工作?

什么是正确的做法?


holdtom
浏览 255回答 2
微课
2回答

婷婷同学_

在这种情况下np.r_是创建一个矩阵row = np.r_['r', [1, 2]]col = np.r_['c', [1, 2]]print(type(row))# numpy.matrixlib.defmatrix.matrix您可以通过首先将它们转换为数组来展平它们print(np.array(row).flatten().shape)# (2,)

MM们

你有矩阵而不是数组,这就是为什么 in 不起作用。在矩阵上创建一个视图并重塑它:np.asarray(row).reshape(-1)
随时随地看视频慕课网APP

相关分类

Python
我要回答