逻辑符 : == != < > <= >=
x=np.array([1,3,5])
x<3
array([True,False,,False])
(2*x) == (x*2)
array([False,False,,False])
统计个数:
np.count_nonzero(x>6)
np.sum(x<6,axis=1) 每行有多少值小于6
np.any(x<8) 任意值是否小于8
np.all(x<8) 所有制是否小于8
布尔运算符: & | ^ ~
np.sum((x>4)&(x<7))
将布尔数组作为掩码:
in: x=np.arange(12).reshape((3,4))
x[x<5]
out: array([0,1,2,3,4,5])
花哨的索引:传递一个索引数组来一次性获得多个数组元素
x=np.arange(12).reshape((3,4))
[x[0,1],x[2,3]]
也可以写作
row=np.array([0,2])
col=np.array([1,3])
x[row,col]
组合使用:
x=np.arange(12).reshape((3,4))
x[2,[0,2]]
x[1:,[0,2]]
x[1:,x<7]