一:NumPy多维数组
1.创建数组
#创建数组 data1=np.array([1,2,3,4]) print(data1)#创建等差数组 data4=np.linspace(20,30,4) #开始的值,结束的值,元素的个数 print(data4) #创建等比数组 data5=np.logspace(1,10,5) print(data5) #创建全0矩阵 data6=np.zeros(6) print(data6) #创建几行几列的全0矩阵 data66=np.zeros([2,2]) print(data66) #创建全1数组· data7=np.ones(6) print(data7) #创建几行几列的全1矩阵 #data77=np.zeros([2,4]) data77=np.zeros((2,4)) print(data77) #对角矩阵 data8=np.diag([1,3,6,9]) print(data8) #对角线为1,其他位置为0的矩阵 data88=np.eye(4) print(data88)
2.查看数组属性
#查看数组属性 data=np.array([[1,2,3],[6,7,8]]) print("轴的个数:",data.ndim) print("形状:",data.shape) print("元素个数:",data.size) #设置数组的属性 dataa=data.shape=3,2 print("形状",dataa)#数组类型转换 a=np.arange(5) print(a.dtype) a1=a.astype(np.float32) print(a1.dtype) #生成随机数 a2=np.random.randint(10,100,size=(3,3)) print("随机整数:",a2) #随机数组 a3=np.random.rand(6) print(a3) a4=np.random.rand(2,4) print(a4)
3.数组变换
##数组重塑 #数组维度 z=np.arange(8) print(z) z1=z.reshape(4,2) print(z1) #数据散开即横 z2=z.reshape(4,2) print(z2.ravel()) #扁平化 z3=z.reshape(2,4) print(z3.flatten()) #数组横向合并(注意)*** z4=np.arange(6).reshape(3,2) print(z4) z44=z4*2 z444=np.hstack((z4,z44)) print(z444) #纵向合并*** z5=np.arange(6).reshape(3,2) print(z5) z55=z5*2 z555=np.vstack((z5,z55)) print(z555)
4.数组切片
#一维数组的索引 q1=np.arange(10) print(q1) print(q1[3]) print(q1[-1]) print(q1[2:6]) #多维数组 q2=np.arange(12).reshape(4,3) print(q2) print(q2[0,1:3]) #0行的第一列到第2列 print(q2[:,2]) #第二列元素 print(q2[:1,:1]) #0行0列
5.数组运算
##数组运算**** x=np.array([1,2,3]) y=np.array([6,7,8]) print("加:",x+y) print("减:",x-y) print("乘:",x*y) print("幂:",x**y) print("除:",x/y) #数组比较运算 x1=np.array([1,2,3]) y1=np.array([6,7,8]) print("<:",x<y) print(">:",x>y)
6. 数据统计和分析
#排序 w=np.array([4,6,22,66,8,9]) print(w) w.sort() print(w) w1=np.array([[3,2,1,66],[77,6,5,98]]) print("原数组",w1) w1.sort(axis=1) print("横向排序:",w1) w1.sort(axis=0) print("纵向排序:",w1) #去重 name=np.array(['小红','小明','小红','小李','小米']) print("原数组",name) print("去重:",np.unique(name)) #数据重复 n=np.arange(6) print("原数组:",n) n1=np.tile(n,2) #2代表次数 print(n1) n2=np.array([[1,2,3],[7,89,99]]) print(n2.repeat(2,axis=0)) n3=np.array([[1,2,3],[7,89,99]]) print(n3.repeat(2,axis=1))
7.统计函数
#统计函数 m=np.arange(30).reshape(5,6) print("创建:",m) print("和:",np.sum(m)) print("横轴和:",np.sum(m,axis=1)) print("纵轴和:",np.sum(m,axis=0)) print("均值:",np.mean(m)) print("横轴和:",np.mean(m,axis=1)) print("纵轴和:",np.mean(m,axis=0)) print("标准差:",np.std(m)) print("横轴和:",np.std(m,axis=1)) print("纵轴和:",np.std(m,axis=0))