问题描述:想要将一个一维数组在内容不变的前提下变换维度,可是一直报错
ValueError: cannot reshape array of size 1 into shape (10,2)
代码如下:
ladders = set(np.random.randint(1, 100, size=10*2))
while len(ladders) < 10*2:
ladders.add(np.random.randint(1, 100))
ladders = np.array(ladders)
ladders = ladders.reshape((10,2))
解决方法:
发现ladders变量是set数据类型,需要先转换为list类型后再进行np.array的转化,然后就可以进行reshape操作了。
ladders = set(np.random.randint(1, 100, size=10*2))
while len(ladders) < 10*2:
ladders.add(np.random.randint(1, 100))
# 进行list类型转换即可
ladders = list(ladders)
ladders = np.array(ladders)
ladders = ladders.reshape((10,2))