- 布尔与筛选
import numpy as np a = np.arange(1, 10) b = np.arange(1, 10).reshape(3, 3) # 判断a 数组中小于5的元素 print(a < 5) # 输出 [ True True True True False False False False False] # 筛选出a 数组中小于5的元素, print(a[a < 5]) # 输出 [1 2 3 4] # 筛选出b 数组中小于5的元素,这里二维数组生成同样是一维数组 print(b[b < 5]) # 输出 [1 2 3 4]
- 转换
import numpy as np a = np.arange(1, 10) b = np.arange(1, 10).reshape(3, 3) c = np.arange(1,13).reshape(3,4) # 将一维数组转为二维数组 A = a.reshape(3,3) # 将二数组c为一维数组 C = c.ravel() # or c.shape = (12) # 矩阵转置 B = b.transpose()
- 连接
import numpy as np a = np.zeros((3,3)) b = np.ones((3,3)) arr = np.array([2,2,2]) # 把数组b垂直连接到a c = np.vstack((a,b)) # 把数组b水平连接到a d = np.hstack((a,b)) # 多个数组水平连接操作 e = np.column_stack((a,b,arr)) # 多个数组垂直连接操作 f = np.row_stack((a,b,arr))
- 切分
import numpy as np a = np.arange(16).reshape((4, 4)) # 将数组水平切分为2份 [A, B] = np.hsplit(a, 2) # 将数组水平切分为2份 [C, D] = np.vsplit(a, 2) # 使用np.split()切分 # np.split(ary,indices_or_sections,axis=0) # ary : 数组 # indices_or_sections :如果为整数则平均切分,如果为整数则按列切分 # axis : 如果为0则按行切分,如果则按列切分 [A1, A2] = np.split(a, indices_or_sections=2, axis=0) # 切分为第一行,第二三行,第四行 [A3, A4, A5] = np.split(a, indices_or_sections=[1, 3], axis=0)
python numpy随笔(数组的筛选、布尔、转换、连接、切分)
猜你喜欢
转载自blog.csdn.net/fm345689/article/details/88623459
今日推荐
周排行