网站开发职能,南京网站推广,帝国cms网站建设,dz网站模板球树结构
1 基本使用方法
sklearn.neighbors.BallTree(X, leaf_size40, metricminkowski, **kwargs)
2 主要参数说明
X 输入数据#xff0c;维度为 (n_samples, n_features) n_samples 是数据集中点的数量n_features 是参数空间的维数leaf_size 点数少于多少时#xff0c…球树结构
1 基本使用方法
sklearn.neighbors.BallTree(X, leaf_size40, metricminkowski, **kwargs)
2 主要参数说明
X 输入数据维度为 (n_samples, n_features) n_samples 是数据集中点的数量n_features 是参数空间的维数leaf_size 点数少于多少时切换到暴力搜索更改 leaf_size 不会影响查询结果但可能会显著影响查询速度和构建树所需的内存metric度量距离
3 举例
3.1 最近的K个邻居
import numpy as np
from sklearn.neighbors import BallTree
X np.random.randn(10,3)
tree BallTree(X, leaf_size2)
dist, ind tree.query(X[:2], k3) print(ind)
# 最近的k个邻居的index[[0 4 5][1 2 8]]
print(dist)
# 最近的k个邻居的距离[[0. 0.86677441 1.16406937][0. 0.95190704 1.32997164]]3.2 位于查询点指定半径内的所有邻居点
查找位于每个查询点半径内的点的索引
query_radius(X, r, return_distanceFalse, count_onlyFalse, sort_resultsFalse)
X 查询点的坐标(n_queries, n_features)r float 或一维数组表示查询半径 count_only bool默认为 False。 如果为 True则只返回每个查询点内邻居点的数量而不返回邻居点的索引 return_distancebool默认为 False。如果为 True则返回每个查询点到其邻居点的距离列表 import numpy as np
from sklearn.neighbors import BallTree
X np.random.randn(10,3)
tree BallTree(X, leaf_size2) tree.query_radius(X[:2],r[0.1,5])array([array([0], dtypeint64),array([6, 2, 4, 7, 8, 1, 0, 3, 9, 5], dtypeint64)], dtypeobject)import numpy as np
from sklearn.neighbors import BallTree
X np.random.randn(10,3)
tree BallTree(X, leaf_size2) tree.query_radius(X[:2],r[0.1,5],return_distanceTrue)(array([array([0], dtypeint64),array([8, 2, 3, 6, 1, 9, 7, 0, 5, 4], dtypeint64)], dtypeobject),array([array([0.]),array([2.18948629, 1.05002031, 1.48036256, 1.54854719, 0. ,2.37799982, 3.36371823, 2.63138373, 2.54630893, 3.57322436])],dtypeobject))