【发布时间】:2019-02-10 13:07:22
【问题描述】:
以下数据,表示 2 个给定的直方图,分成 13 个 bin:
key 0 1-9 10-18 19-27 28-36 37-45 46-54 55-63 64-72 73-81 82-90 91-99 100
A 1.274580708 2.466224824 5.045757621 7.413716262 8.958855646 10.41325305 11.14150951 10.91949012 11.29095648 10.95054297 10.10976255 8.128781795 1.886568472
B 0 1.700493692 4.059243006 5.320899616 6.747120132 7.899067471 9.434997257 11.24520022 12.94569391 12.83598464 12.6165661 10.80636314 4.388370817
我正在尝试关注this article,以便使用以下方法计算这两个直方图之间的交集:
def histogram_intersection(h1, h2, bins):
bins = numpy.diff(bins)
sm = 0
for i in range(len(bins)):
sm += min(bins[i]*h1[i], bins[i]*h2[i])
return sm
由于我的数据已经被计算为直方图,我不能使用 numpy 内置函数,所以我无法为函数提供必要的数据。
如何处理我的数据以适应算法?
【问题讨论】:
-
您显示的功能有什么问题?乍一看,对我来说已经足够了。
-
该函数需要直方图方法生成的 bin。我只有直方图数据。
-
直接
np.minimum(A, B)怎么样,因为 A 和 B 的 bin 相同? -
感谢回复,我试试看
标签: python numpy statistics histogram