numpy简单学习

 1 import numpy as np
 2 
 3 if __name__ == '__main__':
 4     #np.dtype 矩阵数据类型,np.shape (3,3)3乘3矩阵,np.ndim 矩阵维数
 5     a = np.array([[1,2,3],[1,2,3],[4,5,6]])
 6 
 7     np.uint8([1])
 8     np.arange(2,10,2)  #[2,10)间距为2的矩阵
 9     np.linspace(0,2*np.pi,5)   #[0.         1.57079633 3.14159265 4.71238898 6.28318531]一共5个数
10     b=np.zeros((4,3),dtype=np.int32) #零矩阵,4乘3,int型
11     np.ones((2,2),dtype=np.float64)   #全1矩阵
12     np.eye(2)   #2乘2单位矩阵
13     np.identity(3)   #3乘3单位矩阵
14     b = np.random.randint(1,6,(3,3),dtype=np.uint8)  #1到6范围内float型2乘3矩阵
15     print(b)
16 
17     #矩阵变换
18     a = a.reshape((1,9))    #[[1 2 3 1 2 3 4 5 6]]
19     a = a.reshape((-1,3))   #必须3列
20     a = a.flatten()   #转为一维数组[1 2 3 1 2 3 4 5 6]
21 
22     b = b.T  #转置
23     c = b.transpose()  #转置
24     #print(b)
25     a = np.array([[1, 2, 3], [1, 2, 3], [4, 5, 6]])
26     b = np.array([[1,1,1],[2,2,2],[3,3,3]])
27     d = np.hstack((a,b,a))   #水平拼接,维数必须相同
28     e = np.vstack((a,b,a))   #竖直拼接
29 
30     print(a.max()) #最大值np.max(a)
31     a.min()   #最小值
32     a.mean()  #均值
33     A = a.max(axis=0)  #每一列的最大值[4 5 6]
34     B = a.max(axis=1)  #每一行的最大值[3 3 6]
35     # a = a + b
36     # print(a)  #[[2 3 4][3 4 5][7 8 9]]
37     # np.power(a,2)   #每项都2次幂
38     # np.sqrt(b)   #每项都开方
39     # np.log(a)
40     # np.log10(b)
41     # np.log2(a)
42     C = a * b  #每项相乘[[ 1  2  3][ 2  4  6][12 15 18]]
43     D = a @ b   #a的行乘b的列,矩阵乘法[[14 14 14][14 14 14][32 32 32]]
44     a.dot(b)   #同 D = a @ b
45 
46     print("a的第0行:%s" %a[0,:])
47     print("a的第0列:%s"  %a[:, 0])
48     print("a的前两行:%s" %a[0:2, :])   #[0,2)不包含第三行
49     print("a的右下角:%s" %a[1:, 1:])
50     a[0,0] = 10
51     a[0,:] = np.array([4,5,6])
52     # a的第0行:[1 2 3]
53     # a的第0列:[1 1 4]
54     # a的前两行:[[1 2 3]
55     #        [1 2 3]]
56     # a的右下角:[[2 3]
57     #        [5 6]]

 

posted @ 2023-01-12 20:18  能吃八碗饭  阅读(23)  评论(0)    收藏  举报