识别N维数据集的缺口

本文关键字:缺口 数据集 识别 | 更新日期: 2023-09-27 18:01:20

我们有一个有趣的问题需要解决,我们正在使用c# . net 4.0,但是语言应该是无关的,因为它是一个数学问题。

问题:我们需要识别N维数据集中的差距,并准确地将这些差距报告给用户。

例如,让我们假设我们正在使用3d,所以我们有这个对象Quote具有6个属性:TermFrom, TermTo, AgeFrom, AgetTo, AmountFrom, AmountTo和我们需要覆盖的边界:MinTerm = 0, MaxTerm = 5, MinAge = 0, MaxAge = 5, MinAmount = 0, MaxAmount = 5。假设所有的最小值是0,最大值是5,只是为了简化示例,尽管它们可能不同。因此,我们需要检查缺口的数据是以下数据集:

Quote[] {
  {  TermFrom=0, TermTo=3, AgeFrom=0, AgetTo=4, AmountFrom=0, AmountTo=2  },
  {  TermFrom=4, TermTo=5, AgeFrom=0, AgetTo=5, AmountFrom=3, AmountTo=5  }

此数据集包含组合的间隙:{ Term: 0-5, Age: 4-5, Amount: 0-2 } and { Term: 0-3, Age: 0-5, Amount: 2-5 }, { Term: 4-5, Age: 0-5, Amount: 0-2 } (i think)

。如果你想象一个立方体,数据集是这个立方体的一部分,要计算所有数据集的总体积必须等于立方体的体积。如果这个立方体的体积不够大,我们需要确定它的空隙在哪里。

所有这些都需要更多维度:4和5,但很难可视化。我希望有某种数学上的解决方案来解决这个问题,我们可以把它转换成c#代码。

识别N维数据集的缺口

使用k-d树,它的目的就是为这类应用程序划分空间。