numpy中的reshape操作

numpy.reshape(-1,1)

数组新的shape属性应该要与原来的配套,如果等于-1的话,那么Numpy会根据剩下的维度计算出数组的另外一个shape属性值。
举个例子:

x = np.array([[2, 1], [2, 1], [2, 3]])

指定新数组行为3,列为,2,则:

y = x.reshape(3,2)
 
y
Out[43]: 
array([[2, 1],
       [2, 1],
       [2, 3]])
       

指定新数组列为1,则:

y = x.reshape(-1,1)
 
y
Out[34]: 
array([[2],
       [1],
       [2],
       [1],
       [2],
       [3]])

指定新数组列为2,则:

y = x.reshape(-1,2)
 
y
Out[37]: 
array([[2, 1],
       [2, 1],
       [2, 3]])

指定新数组行为1,则:

y = x.reshape(1,-1)
 
y
Out[39]: array([[2, 1, 2, 1, 2, 3]])

指定新数组行为2,则:

y = x.reshape(2,-1)
 
y
Out[41]: 
array([[2, 1, 2],
       [1, 2, 3]])

这里仅仅是以二维的数组进行了举例,二维以上的也是按照如此操作的。总之除了指定reshape的维度之外,-1的操作的维度就是待决定的,根据其他给定的维度进行推导。

猜你喜欢

转载自blog.csdn.net/qq_52302919/article/details/123723471
今日推荐