Python 查找numpy数组中小于x的元素的索引

Python 查找numpy数组中小于x的元素的索引,python,numpy,Python,Numpy,假设我有一个numpy数组,例如: import numpy as np arr = np.array([10,1,2,5,6,2,3,8]) 如何提取包含小于6的元素索引的数组,以便得到以下结果: np.array([1,2,3,5,6]) 我想要一个类似的东西,但不是测试非零值,而是测试小于x的值。您可以在布尔掩码上使用numpy.flatnonzero,并返回在展开版本中非零的索引: 最简单的方法就是 arr[arr<6] arr[arr应该对元素进行排序吗?或者这仅仅

假设我有一个numpy数组,例如:

import numpy as np    
arr = np.array([10,1,2,5,6,2,3,8])
如何提取包含小于6的元素索引的数组,以便得到以下结果:

np.array([1,2,3,5,6])

我想要一个类似的东西,但不是测试非零值,而是测试小于x的值。您可以在布尔掩码上使用
numpy.flatnonzero
,并返回在展开版本中非零的索引:


最简单的方法就是

arr[arr<6]

arr[arr应该对元素进行排序吗?或者这仅仅是一个“可能的”结果吗?
“但是它不是测试非零值,而是测试小于x的值。”.那么,测试它吗?您已经提到了
np.nonzero
。在@Divakar的提示基础上,
False
值在阅读Psidom答案后计算为zeroyes,我觉得有点傻。
np.where(arr < 6)[0]
# array([1, 2, 3, 5, 6])
arr[arr<6]