numpy:reshape()详解

版权声明:本文为博主原创文章,未经博主允许不得转载。 https://blog.csdn.net/chekongfu/article/details/85543488

reshape作用:将数组中数据重新划分。举个例子:现在有100号人,可以让100好人站一个队,一个队100人;也可以站10个队,每队10人;还可以分两块场地站队,每块场地站5队,一队10人…

import numpy as np

a = np.array([1,2,3,4,5,6,7,8])
b = a.reshape((2,4))
c = a.reshape((2,2,2))
d = a.reshape(2,2,2,1)
e = a.reshape(2,2,1,2)

print(a)
print('---------------------------')
print(b)
print('---------------------------')
print(c)
print('---------------------------')
print(d)
print('---------------------------')
print(e)

运行结果:
在这里插入图片描述

reshape之后生成的数组和之前的数组共用内存,无论更改哪个数组的值,其他数组也会发生相应改变。

import numpy as np

a = np.array([1,2,3,4,5,6,7,8])
b = a.reshape((2,4))
c = a.reshape((2,2,2))
d = a.reshape(2,2,2,1)
e = a.reshape(2,2,1,2)

b[1][1] = 100

print(a)
print('---------------------------')
print(b)
print('---------------------------')
print(c)
print('---------------------------')
print(d)
print('---------------------------')
print(e)

运行结果:
在这里插入图片描述

注意:reshape()中所有参数的乘积要等于初始数组的大小,否则报错。

import numpy as np

a = np.array([1,2,3,4,5,6,7,8])
b = a.reshape((3,4))

在这里插入图片描述

猜你喜欢

转载自blog.csdn.net/chekongfu/article/details/85543488
今日推荐