KDTree双型整数

时间:2017-01-05 17:34:20

标签: python numpy scipy kdtree

我有一个2维坐标列表,我正在创建kdtree。坐标属于double类型 - 例如[508180.748, 195333.973]

我使用numpy来创建和数组,然后我使用scipy的KDTree函数。

import numpy as np
import scipy.spatial

points_array = np.array(points)
kdt = scipy.spatial.KDTree(points_array)

# Query    
tester = kdt.query_pairs(20)
tester = list(tester)    
print(tester[0])

返回:

(109139, 109144)

结果丢失了原始数据的分辨率。如何保持双精度浮点格式?

1 个答案:

答案 0 :(得分:2)

这些是点数组中的索引,而不是点本身的坐标值。元组有两个索引,一个用于数组中的每个点,它是一对的一部分,它在坐标空间中的分离小于查询距离。

要查看配对中各点坐标的值,您可以执行以下操作:

tester = kdt.query_pairs(20)
tester = list(tester)    
print(points_array[tester[0][0]], points_array[tester[0][1]])