我用这个非常简单的代码有一个奇怪的行为

import numpy as np
[y, binEdges] = np.histogram(x, xout)


其中x和xout是numpy数组(xout描述等间距的bin的边缘)。

如果我做

np.sum(y)


该值不等于x(x.shape)中的元素数,此值比x.shape小得多,我无法弄清原因。它是np.histogram的错误吗?如果需要,我可以上载x和xout numpy数组,但是它们很长(x.shape为19133 float64,xout.shape为1360 float64)。让我知道我在上面的代码中是否做错了什么。

最佳答案

尝试这个:

y.sum() + (x < xout[0]).sum() + (x > xout[-1]).sum()

07-24 09:24