比如一个数组【1,2,3,4,5】 shape是(5,)
reshape(-1,1)的结果是:
[[1]
[2]
[3]
[4]
[5]]
是一个一行5行1列的二维数组,shape为(5,1)
让我们再来看看reshape(-1,2)呢:ValueError: cannot reshape array of size 5 into shape (2) 报错了
那我们来试一试【1,2,3,4,5,6】呢
[[1 2]
[3 4]
[5 6]]
他的shape是(3,2)
你可以推出-1是将一维数组转换为二维的矩阵,并且第二个参数是表示每一行数的个数,但是在reshape的时候必须让数组里面的个数和shape的函数做取余时值为零才能转换
原文:https://www.cnblogs.com/bluesl/p/9215766.html