1、利用布尔值来取元素
import numpy as np
mask = np.array([1,0,1],dtype=bool) # 1表示取对应的元素,0表示不取
arr = np.array([[1,2,3],[4,5,6],[7,8,9]])
print(arr[mask,2])
print(arr[:,mask])
运行结果:
[3 9]
[[1 3]
[4 6]
[7 9]]
一维数组取值
arr = np.array([1,2,3,2,4,5,6,4,6])
mask = arr>3
print(arr[mask])
mask1 = arr==2
print(arr[mask1])
运行结果:
2、变换数组形态
(1)展平数组 ravel 和 flatten
# 一维数组变为二维数组
arr = np.arange(1,10,1).reshape(3,3)
print(arr)
# 二维数组变为一维数组
arr1 = np.array([[1,2,3],[4,5,6],[7,8,9]])
print(arr1)
arr1.ravel()
print(arr1)
运行结果:
3、展平数组 flatten
# 展平方式 flatten
arr1 = np.array([[1,2,3],[4,5,6],[7,8,9]])
print(arr1)
print('横向展平:',arr1.flatten())
print('纵向展平:',arr1.flatten('F'))
运行结果: