1,数组的索引
import numpy as np
arr=np.arange(10)
print(arr[::2]) 取的是偶数[ 0 2 4 6 8 ]
print(arr[-1]) 取的是最后一个 9
二维数组的索引
(1)arr2=np.arange(100).reshape((20,5)) 20 行5 列的数组
print(arr2[1,2]) 行和列分别被逗号分开 1是行的索引 2 是列
也可以切片 arr2[1:2,3:4]
(2)当取的值位置不是连续的时候可以用arr2[(0,0,1,1),(0,2,3,4)] 取 的值是 第0行的0列 第0行2列 第1行的3列 第1行的4列
(3)bool 值取值
mask = np.array([1, 0, 1,1,0], dtype=np.bool)
print(mask)
print(arr2[mask, 2]) 分别去的是第1行 和第3 行和第4行
2,数组展平
arr2.ravel()
arr2.flatten(‘F’) 纵向依次取值
arr2.flatten(‘C’) 横向依次取值
3,数组组合
arr1=np.arange(12).reshape(3,4)
arr2=3 * arr1
np.hstack((arr1,arr2)) 横向组合
np.vstack((arr1,arr2))纵向组合
np.concatenate((arr1,arr2),axis=1)横向组合
np.concatenate((arr1,arr2),axis=0)纵向组合
4,数组分割
hsplit ,vsplit,sp