np.reshape()指定三个参数如何重塑矩阵?(-1,1,2)含义是什么
matrix = np.array([[10,450],[110,250],[200,500]]) reshaped = matrix.reshape(-1,1,2)
参数(-1,1,2)的具体含义
reshape传入的元组依次对应新数组每个维度的长度,三个参数分别作用如下:
2:指定新数组最后一个维度(第三维)的长度固定为21:指定新数组第二个维度的长度固定为1-1:是NumPy预留的自动计算标识,不需要手动传具体数值,程序会基于原数组的总元素数自动推算这个维度的长度。
原矩阵总共有3行2列共6个元素,已知另外两个维度长度是1和2,所以第一维的长度自动计算为 6/(1*2)=3。
重塑后的数组形态
最终得到的是shape为(3,1,2)的三维数组,实际结构如下:
array([[[ 10, 450]], [[110, 250]], [[200, 500]]])
你可以直观理解为:整个数组包含3个独立的子单元,每个子单元里只有1组数据,每组数据包含2个数值。
内容的提问来源于stack exchange,提问作者Rishav Mitra
相关产品推荐
相关产品推荐

