2024-10-01 09:26:49 发布
网友
我有一个numpy数组,名为a,我想检查它是否包含一个由两个值指定的范围内的项。在
a
import numpy as np a = np.arange(100) mintrshold=33 maxtreshold=66
我的解决方案:
你能给我一个更有效的,Python式的方法吗?在
Numpy数组不能很好地与pythonic a < x < b配合使用。但这里有个函数:
a < x < b
np.logical_and(a > mintrshold, a < maxtreshold)
或者
在你的特殊情况下。基本上,你应该把两个元素结合起来。有关详细信息,请查找logic funcs
除了纯Numpy答案之外,我们还可以使用itertools
itertools
import itertools bool(list(itertools.ifilter(lambda x: 33 <= x <= 66, a)))
对于较小的阵列,这就足够了:
Numpy数组不能很好地与pythonic
a < x < b
配合使用。但这里有个函数:或者
^{pr2}$在你的特殊情况下。基本上,你应该把两个元素结合起来。有关详细信息,请查找logic funcs
除了纯Numpy答案之外,我们还可以使用
itertools
对于较小的阵列,这就足够了:
^{pr2}$相关问题 更多 >
编程相关推荐