np.ndarray.compress():返回一个根据给定条件筛选后的数组
In [65]: a.compress(a<4) Out[65]: array([1, 2, 3]) In [66]: a.compress((a>3)&(a<6)) Out[66]: array([4, 5])
np.ndarray.clip(min,max):大于max的值会被重设成max,小于min的值会被重设成min;不指定min max默认为min 可以只选一个 也可以都选
In [47]: a = np.arange(1,10) In [49]: a.clip(max=4) Out[49]: array([1, 2, 3, 4, 4, 4, 4, 4, 4]) In [51]: a.clip(min=6) Out[51]: array([6, 6, 6, 6, 6, 6, 7, 8, 9]) In [52]: a.clip(3,6) Out[52]: array([3, 3, 3, 4, 5, 6, 6, 6, 6]) In [54]: a.clip(7) Out[54]: array([7, 7, 7, 7, 7, 7, 7, 8, 9]) In [55]: a.clip(6,2) Out[55]: array([6, 6, 6, 6, 6, 2, 2, 2, 2]) In [57]: a.clip(max=3,min=5) Out[57]: array([5, 5, 5, 5, 3, 3, 3, 3, 3]) #clip()是不会改变ndarray里元素的顺序 In [58]: a=np.array([4,3,6,1]) In [60]: a.clip(2,4) Out[60]: array([4, 3, 4, 2]) In [61]: a.clip(2,3) Out[61]: array([3, 3, 3, 2])