【发布时间】:2016-02-17 21:37:28
【问题描述】:
假设我有一个数组,其中第 1 列以英尺为单位,第 2 列以英尺为单位,第 3 列以秒为单位。例如:
x = [50 40 30]
然后我有另一个数组y,具有相同的单位和相同的列数,但有很多行。然后我用 Scipy 把它变成一个 KDTree:
tree = scipy.KDTree(y)
然后查询那棵树:
distance,index = tree.query(x,k=1)
默认情况下,我相信距离是根据欧几里得范数计算出来的。
例如,distance 可能是:
print distance
[34]
这些是什么单位?它们是否还在原来的英尺、英尺和秒?
【问题讨论】:
-
那么,什么样的单位会在这里有意义?与前两列相比,您的第三列是完全不同类型的数量。我真的想不出一种非任意的方式来权衡“时间距离”与“空间距离”。
-
取点 - 我可能应该在前两列上运行 KDTree,然后根据最后一列找到最接近的点,以便它可以解释。
标签: python scipy dimension kdtree