numpy中reshape的用法

一般用法

numpy.arange(n).reshape(a, b); 依次生成n个自然数,并且以a行b列的数组形式显示

import numpy
numpy.arange(24).reshape(3, 8)

在这里插入图片描述

特殊用法

mat (or array).reshape(c, -1); 必须是矩阵格式或者数组格式,才能使用 .reshape(c, -1) 函数, 表示将此矩阵或者数组重组,以 c行d列的形式表示

-1的作用就在此,自动计算d:d=数组或者矩阵里面所有的元素个数/c, d必须是整数,不然报错)(reshape(-1, e)即列数固定,行数需要计算
import numpy
arr = numpy.arange(24).reshape(3, 8)
arr.reshape(4,-1)

在这里插入图片描述

import numpy
arr = numpy.arange(24).reshape(3, 8)
# arr.reshape(4,-1)
arr.reshape(-1,4)

在这里插入图片描述

示例

转成一行

import numpy as np
a =np.array([[1,2,3,4],[4,2,5,7],[1,2,4,9]])
b = a.reshape(1,-1)
print(b)

在这里插入图片描述

转成一列:

import numpy as np
a =np.array([[1,2,3,4],[4,2,5,7],[1,2,4,9]])
b = a.reshape(-1,1)
print(b)

在这里插入图片描述

Guess you like

Origin blog.csdn.net/baidu_41797613/article/details/120753105