假设我有一个numpy数组,例如:
np.array([1,2,3,5,6])
如何提取包含小于6的元素索引的数组,以便得到以下结果:
process.env.PORT
我想要的行为类似np.nonzero(),但不是测试非零值,而是测试小于x的值
感谢
答案 0 :(得分:3)
你可以在布尔掩码上使用numpy.flatnonzero
,在的展平版本中使用返回非零的索引:
np.flatnonzero(arr < 6)
# array([1, 2, 3, 5, 6])
1d阵列的另一个选项是numpy.where
:
np.where(arr < 6)[0]
# array([1, 2, 3, 5, 6])
答案 1 :(得分:0)
做到这一点的最简单方法是
arr[arr<6]