0
点赞
收藏
分享

微信扫一扫

SpringBoot+Vue实现图片滑块和文字点击验证码

时光已翩然轻擦 2024-05-12 阅读 41

在代码中经常能看到reshape((1, -1))或者reshape((-1, 1))的用法,这里予以记录,如有错误还请大佬指正。


reshape函数用于改变数组或系列的形状。当使用-1作为参数时,它是一种灵活的方式来告诉函数自动帮助计算出应该有的行数或列数,以保持数组元素总数不变。

1. reshape((-1, 1))

当使用reshape((-1, 1))时,你是在告诉函数你想把数组重塑为只有一列的二维数组,而行数由系统根据原始数组的元素数量自动计算得出。这意味着,无论原始数组的形状如何,重塑后都会变成多行一列的形式。

举个例子:

import numpy as np

arr = np.array([1, 2, 3, 4, 5])
reshaped_arr = arr.reshape((-1, 1))

在这个例子中,arr是一个有5个元素的一维数组。重塑后,reshaped_arr会变成一个形状为(5, 1)的二维数组,结果即:

[[1],
 [2],
 [3],
 [4],
 [5]]

2.reshape((1, -1))

相反,当你使用reshape((1, -1))时,数组就重塑为只有一行,其中列数由系统根据原始数组的元素数量自动确定。这样,所有原始数据会被排列在同一行中。

继续上面的例子,可以看到生成了一个一行的二维数组:

reshaped_arr = arr.reshape((1, -1))

[[1, 2, 3, 4, 5]]

3.总结

总结来说,-1作为一个占位符,允许你在不知道确切的行数或列数时,仍然能够调整数组的形状。

举报

相关推荐

0 条评论