numpy的array数据类型
程序员文章站
2022-10-16 17:04:12
1 import numpy as np 2 3 #创建 4 # 创建一维数组 5 a = np.array([1, 2, 3]) 6 print(a) 7 ''' 8 [1 2 3] 9 ''' 10 # 创建多维数组 11 b = np.array([(1, 2, 3), (4, 5, 6)])... ......
1 import numpy as np 2 3 #创建 4 # 创建一维数组 5 a = np.array([1, 2, 3]) 6 print(a) 7 ''' 8 [1 2 3] 9 ''' 10 # 创建多维数组 11 b = np.array([(1, 2, 3), (4, 5, 6)]) 12 print(b) 13 ''' 14 [[1 2 3] 15 [4 5 6]] 16 ''' 17 # 创建等差一维数组 18 c = np.arange(1, 5, 0.5) 19 print(c) 20 ''' 21 [1. 1.5 2. 2.5 3. 3.5 4. 4.5] 22 ''' 23 # 创建随机数数组 24 d = np.random.random((2, 2)) 25 print(d) 26 ''' 27 [[0.65746941 0.09766114] 28 [0.15024283 0.9212932 ]] 29 ''' 30 # 创建一个确定起始点和终止点和个数的等差一维数组 31 ##包含终止点 32 e = np.linspace(1, 2, 10) 33 print(e) 34 ''' 35 [1. 1.11111111 1.22222222 1.33333333 1.44444444 1.55555556 1.66666667 1.77777778 1.88888889 2. ] 36 ''' 37 ##不包含终止点 38 f = np.linspace(1, 2, 10, endpoint=false) 39 print(f) 40 ''' 41 [1. 1.1 1.2 1.3 1.4 1.5 1.6 1.7 1.8 1.9] 42 ''' 43 #创建一个全为‘1’的 数组 44 g = np.ones([2,3]) 45 print(g) 46 ''' 47 [[1. 1. 1.] 48 [1. 1. 1.]] 49 ''' 50 #创建一个全为‘0’的数组 51 h = np.zeros([2,3]) 52 print(h) 53 ''' 54 [[0. 0. 0.] 55 [0. 0. 0.]] 56 ''' 57 #通过函数创建数组 58 k = np.fromfunction(lambda i,j :(i+1)*(j+1),(9,9)) 59 print(k) 60 ''' 61 [[ 1. 2. 3. 4. 5. 6. 7. 8. 9.] 62 [ 2. 4. 6. 8. 10. 12. 14. 16. 18.] 63 [ 3. 6. 9. 12. 15. 18. 21. 24. 27.] 64 [ 4. 8. 12. 16. 20. 24. 28. 32. 36.] 65 [ 5. 10. 15. 20. 25. 30. 35. 40. 45.] 66 [ 6. 12. 18. 24. 30. 36. 42. 48. 54.] 67 [ 7. 14. 21. 28. 35. 42. 49. 56. 63.] 68 [ 8. 16. 24. 32. 40. 48. 56. 64. 72.] 69 [ 9. 18. 27. 36. 45. 54. 63. 72. 81.]] 70 ''' 71 ############## 72 #获取数组的相关属性 73 a = np.array([(1,2,3),(4,5,6)]) 74 print(a) 75 ##获取数组的形状 76 print(a.shape) 77 ''' 78 (2, 3) 79 表示:该数组为2行3列 80 ''' 81 ## 改变数组的形状 82 b = a.reshape(3,2) 83 print(b) 84 ''' 85 [[1 2] 86 [3 4] 87 [5 6]] 88 将a数组的数据由2行3列变成3行2列得到b数组,但是a数组没有发生改变 89 ''' 90 a.resize(3,2) 91 print(a) 92 ''' 93 [[1 2] 94 [3 4] 95 [5 6]] 96 a数组由2行3列变成3行2列,此时,a数组的形状发生了改变 97 ''' 98 ############## 99 #数组切片操作 100 a = np.array([(1,2,3),(4,5,6)]) 101 print(a) 102 ''' 103 [[1 2 3] 104 [4 5 6]] 105 ''' 106 ##获取数组的第二行 107 print(a[1]) 108 ''' 109 [4 5 6] 110 ''' 111 ##获取数组的前两行 112 print(a[0:2]) 113 ''' 114 [[1 2 3] 115 [4 5 6]] 116 ''' 117 ##获取数组的前两列的值 118 print(a[:,[0,1]]) 119 ''' 120 [[1 2] 121 [4 5]] 122 ''' 123 ##获取数组的第1行的前两列的值 124 print(a[0,[0,1]]) 125 ''' 126 [1 2] 127 ''' 128 ##遍历数组 129 for row in a: 130 print(row) 131 ''' 132 [1 2 3] 133 [4 5 6] 134 ''' 135 ####################### 136 ##数组拼接 137 a = np.array([1,2,3]) 138 b = np.array([4,5,6]) 139 #垂直方向的拼接 140 c = np.vstack((a,b)) 141 print(c) 142 ''' 143 [[1 2 3] 144 [4 5 6]] 145 ''' 146 #竖直方向的拼接 147 d = np.hstack((a,b)) 148 print(d) 149 ''' 150 [1 2 3 4 5 6] 151 ''' 152 ##################### 153 ##数组的计算 154 a = np.array([1,2,3]) 155 b = np.array([4,5,6]) 156 #加法 157 c = a+b 158 print(c) 159 ''' 160 [5 7 9] 161 ''' 162 #减法 163 d= a - b 164 print(d) 165 ''' 166 [-3 -3 -3] 167 ''' 168 #乘法 169 e = a * b 170 print(e) 171 ''' 172 [ 4 10 18] 173 ''' 174 #求和 175 f = np.array([(1,2,3),(4,5,6)]) 176 print(f.sum()) 177 ''' 178 21 179 ''' 180 #按列求和 181 print(f.sum(axis=0)) 182 ''' 183 [5 7 9] 184 ''' 185 #按行求和 186 print(f.sum(axis=1)) 187 ''' 188 [ 6 15] 189 ''' 190 #最小值的值 191 print(f.min()) 192 ''' 193 1 194 ''' 195 #最小值的索引 196 print(f.argmin()) 197 ''' 198 0 199 ''' 200 #最大值的值 201 print(f.max()) 202 ''' 203 6 204 ''' 205 print(f.argmax()) 206 ''' 207 5 208 ''' 209 #平均值 210 print(f.mean()) 211 ''' 212 3.5 213 ''' 214 #方差 215 print(f.var()) 216 ''' 217 2.9166666666666665 218 ''' 219 #标准差 220 print(f.std()) 221 ''' 222 1.707825127659933 223 ''' 224 ############# 225 # 线性代数的运算 226 #矩阵内积 227 np.dot() 228 #行列式 229 np.linalg.det() 230 # 逆矩阵 231 np.linalg.inv() 232 #多元一次方程组求根 233 np.linalg.solve() 234 #求特征值和特征向量 235 np.linalg.eig()