Python 如何从sklearn.neights.KDTree检索节点?
有没有办法从Python 如何从sklearn.neights.KDTree检索节点?,python,scikit-learn,nearest-neighbor,Python,Scikit Learn,Nearest Neighbor,有没有办法从sklearn.neights.KDTree实例中按id获取节点或所有节点 from sklearn.neighbors import KDTree import numpy as np tree = KDTree(np.array([[0., 0., 0.], [1., 1., 1.]])) # How to get the array [[0., 0., 0.], [1., 1., 1.]] back out? # Or something like this
sklearn.neights.KDTree
实例中按id获取节点或所有节点
from sklearn.neighbors import KDTree
import numpy as np
tree = KDTree(np.array([[0., 0., 0.], [1., 1., 1.]]))
# How to get the array [[0., 0., 0.], [1., 1., 1.]] back out?
# Or something like this:
tree.get_node(0)
# Which would return: [0., 0., 0.]
.get_arrays()方法允许您访问所有数组,第一个数组是原始数据
from sklearn.neighbors import KDTree
import numpy as np
Z = np.array([[-1, -1], [-2, -1], [-3, -2], [1, 1], [2, 1], [3, 2]])
kdt = KDTree(Z, leaf_size=30, metric='euclidean')
kdt.query(Z, k=2, return_distance=False)
kdt.get_arrays()[0]
array([[-1., -1.],
[-2., -1.],
[-3., -2.],
[ 1., 1.],
[ 2., 1.],
[ 3., 2.]])