如何找到数组的索引,其中的值大于numpy中的某个阈值?

2024-03-28 14:45:21 发布

您现在位置:Python中文网/ 问答频道 /正文

在python(3.5.2)中,我有一个不断增加的值数组,我希望找到值大于某个阈值的索引

我尝试了以下代码

f = [0.0, 9.7, 19.5, 29.2, 39.0, 48.8, 58.5, 68.3, 78.1, 87.8, 97.6, 107.4, 117.1, 126.9]
index = min(np.argwhere(f>100))

这会产生一个错误

TypeError: unorderable types: list() > int()

但是,预期结果是index=11,因为f[11]是数组f的第一个大于100的元素

如何修复此代码?有更好的办法吗


Tags: 代码元素index错误np阈值数组min
1条回答
网友
1楼 · 发布于 2024-03-28 14:45:21

这可以做到:

np.argwhere(np.array(f)>100).min()

或:

np.argmax(np.array(f)>100)

注意argmax在第一个索引处停止,该索引将条件求值为True

相关问题 更多 >