矢量化的计数值在范围内



我正在寻找一种矢量化方法来计算区间内的值,例如

def count_within_interval(
x: np.array, lower_bound: np.array, upper_bound: np.array
) -> float:

我想避免元素上的for循环,比如这个

float((x[(x >= lower_bound) * (x < upper_bound)]).sum()) / len(x)

我认为使用numpy:可以做到这一点

len(x[np.logical_and(x >= lower_bound, x < upper_bound)])

你基本上得到了[lower_bound,upper_bound]中的所有元素,并返回你得到的元素数量

最新更新