首页 > 解决方案 > 无法将 numpy 行矩阵重塑为列矩阵

问题描述

这是一个非常简单的练习,我需要将行更改为列,但在 python 中似乎并不那么简单

import numpy as np

rd = np.zeros(3)
normal = 0
for i in range(len(rd)):
    rd[i]= randrange(0,10)
    normal += rd[i]

for i in range(len(rd)):
    rd[i] = round(rd[i]/normal,3)
print(rd.shape)
x = rd.reshape((0,3))
print(x.shape)

得到错误 ValueError: cannot reshape array of size 3 into shape (0,3)

标签: pythonarraysnumpymatrix

解决方案


使用x = rd.reshape((-1,3)). -1 表示“在满足其他轴之后将剩下的任何东西制作”。


推荐阅读