【发布时间】:2021-06-04 21:07:06
【问题描述】:
我有一个 numpy 数组,其中包含作为实验输出的样本。样本都是整数,但我认为这并不重要。有些值在数组中出现了几次,而有些值出现了数百次 - 数组可以包含 10,000 个样本。
虽然这些值看起来是随机的,但它们有一个最小间距。我的意思是没有两个值比例如 27 更接近。所以你可能会在数组中的某个地方看到 50 个值 999,027 的样本,你可能会看到 999,054 的 120 个样本,但你不会看到一个 999,036 样本数组中任意位置的值。我需要检查阵列并确定最小间距是多少,但如果可能的话非常快。您可以将其称为“最近的样本值距离”。我不必检查每个案例,就像您想象的那样,只需检查几个样本,只要它们的值接近,就可以很好地猜测最小差异是多少。
有没有人有一个聪明的算法(使用 Python)可以相当快地找到任何样本之间最近的最小距离?正如我所说,数组可以很大,每秒要检查几十个。
抱歉,这是一个如此奇怪的问题。我希望我已经设法解释得足够好。
【问题讨论】:
标签: python arrays numpy spacing minimum