《NumPy快速入门》03 - 向量索引

79 阅读1分钟

1. 常用的便捷访问方式

image.png

a = np.arange(1, 6)
a[0]
a[2: 4]
a[-2:]
a[::2]
a[[1, 3, 4]]
a[2:4] = 0

这些方式都可以直接修改原始值。所以需要注意是不是真的复制了。

image.png

2. 通过布尔索引取值

image.png

b = np.random.randint(0, 10, 10)
np.any(b > 5)
b[b > 5]
np.all(b > 5)
a[a > 5] = 0
a[(a > 3) | (a == 0)] = 5

3. whre/nonzero

image.png

np.where(a < 5)
np.nonzero(a < 5)
np.where(a < 5, 1, 0) # a[a < 5] = 1; a[a >= 5] = 0
np.clip(a, 2, 4) # a[a < 2] = 2; a[a > 4] = 4