i
import numpy as np
np.array((1,2),dtype = float)
Out[362]: array([1., 2.])
np.array([1,2],dtype = float)
Out[368]: array([1., 2.])
np.zeros((1,2,3))
Out[363]:
array([[[0., 0., 0.],
[0., 0., 0.]]])
np.ones((3,3))
Out[364]:
array([[1., 1., 1.],
[1., 1., 1.],
[1., 1., 1.]])
np.random.rand(3,3) # 0 ~ 1 之间的随机数
Out[371]:
array([[0.79691541, 0.32352848, 0.50198672],
[0.38745087, 0.04150311, 0.00709843],
[0.77560936, 0.04387962, 0.23261929]])
np.random.randn(3,3) # 正态分布形
Out[375]:
array([[-0.92051775, 0.15262225, 0.77931551],
[-0.15132707, -1.23069968, -1.18423238],
[ 1.0790549 , 1.475588 , -0.17599068]])
np.random.random((3,3)) # 三行三列随机数
Out[376]:
array([[0.77356278, 0.07848011, 0.39962065],
[0.47154869, 0.75132858, 0.80331748],
[0.27568448, 0.09891169, 0.28535135]])
np.random.randint(1,9,size = (3,3)) # 三行三列的1~9的随机数
Out[378]:
array([[1, 7, 2],
[7, 7, 1],
[6, 6, 5]])
np.arange(0,8,3) # 0~8里3的倍数
Out[379]: array([0, 3, 6])
np.linspace(1,10,5) # 1~10以内的等差数列
Out[380]: array([ 1. , 3.25, 5.5 , 7.75, 10. ])
np.logspace(2,6,3) # 2~6的等比数列
Out[382]: array([1.e+02, 1.e+04, 1.e+06])
# ================================================
arr
Out[384]:
array([[[7, 4, 7, 5],
[5, 2, 2, 1],
[4, 5, 1, 3]],
[[3, 3, 1, 7],
[7, 1, 1, 5],
[7, 7, 6, 3]]])
# ================================================
arr.ndim # 维度的个数
Out[385]: 3
arr.dtype # 元素的类型
Out[386]: dtype('int32')
arr.itemsize # 类型的字节数
Out[387]: 4
arr.size # 元素的个数
Out[388]: 24
arr.astype(float) # 将arr自身的元素类型修改为float
Out[390]:
array([[[7., 4., 7., 5.],
[5., 2., 2., 1.],
[4., 5., 1., 3.]],
[[3., 3., 1., 7.],
[7., 1., 1., 5.],
[7., 7., 6., 3.]]])
arr.shape # 几行几列(形状)
Out[391]: (2, 3, 4)
arr.shape = (4,6) # 修改自身的形状
arr
Out[394]:
array([[7, 4, 7, 5, 5, 2],
[2, 1, 4, 5, 1, 3],
[3, 3, 1, 7, 7, 1],
[1, 5, 7, 7, 6, 3]])
arr1 = arr.reshape(6,4) # 只是改变了的形状复制到arr1上,arr本身并没有改变
# 注意:arr与arr1是同一个对象,一个的值改变,另一个的值也会改变
Out[395]:
array([[7, 4, 7, 5],
[5, 2, 2, 1],
[4, 5, 1, 3],
[3, 3, 1, 7],
[7, 1, 1, 5],
[7, 7, 6, 3]])