python中的reshape函数

python中的reshape函数

1、reshape函数()

(1)正常情况下的reshape用法

python中的reshape函数_第1张图片

(2)当reshape函数中的-1参数的时候

python中的reshape函数_第2张图片

可以看到,reshape函数就不会考虑你的第0维参数,按照第一维度8来组,也就是八列,然后一共十六个元素,16/8=2 ,所以就是两行。

我们在看几个例子

在这里插入图片描述
在这里插入图片描述

列数设置为16,默认函数也就为1。当reshape函数默认只有一个-1参数的时候,数组按行展开。
python中的reshape函数_第3张图片

注意一下将数据展平时候的注意点

(3)当你想将维度为(a,b,c,d)的矩阵X展平为形状为(bcd, a)的矩阵X_flatten时的一个技巧是:
X_flatten = X.reshape(X.shape [0],-1).T # 其中X.T是X的转置矩阵

python中的reshape函数_第4张图片
python中的reshape函数_第5张图片
python中的reshape函数_第6张图片

自己理解的错误的点:

train_set_x_flatten = train_set_x_orig.reshape(train_set_x_orig.shape[0], -1).T 【1】
train_set_x_flatten1 = train_set_x_orig.reshape(-1, train_set_x_orig.shape[0]) 【2】

一开始认为两个式子等价,其实不然它们只是数组的大小一样,但是元素值不同。

print(train_set_x_flatten == train_set_x_flatten1)
python中的reshape函数_第7张图片

1、reshape函数()

你可能感兴趣的:(python,numpy)