半径近邻图#
- sklearn.neighbors.radius_neighbors_graph(X, radius, *, mode='connectivity', metric='minkowski', p=2, metric_params=None, include_self=False, n_jobs=None)[source]#
计算 X 中点的(加权)近邻图。
邻域限制在距离小于 radius 的点。
更多信息请参考 用户指南。
- 参数:
- X形状为 (n_samples, n_features) 的 {array-like, sparse matrix}
样本数据。
- radius浮点数
邻域半径。
- mode{'connectivity', 'distance'}, 默认值为 'connectivity'
返回矩阵类型:‘connectivity’ 将返回包含 1 和 0 的连接矩阵,而 ‘distance’ 将根据给定度量返回邻居之间的距离。
- metricstr, default=’minkowski’
用于距离计算的度量。默认为“minkowski”,当 p = 2 时,它相当于标准欧几里得距离。 有效的度量值,请参见 scipy.spatial.distance 的文档和
distance_metrics
中列出的度量。- pfloat, default=2
Minkowski 度量的幂参数。当 p = 1 时,这等效于使用 manhattan_distance (l1),而 p = 2 时等效于 euclidean_distance (l2)。对于任意 p,使用 minkowski_distance (l_p)。
- metric_paramsdict, default=None
度量函数的其他关键字参数。
- include_selfbool or ‘auto’, default=False
是否将每个样本标记为其自身的第一个最近邻。如果为“auto”,则对于 mode='connectivity' 使用 True,对于 mode='distance' 使用 False。
- n_jobsint, default=None
运行邻居搜索的并行作业数。
None
表示 1,除非在joblib.parallel_backend
上下文中。-1
表示使用所有处理器。更多详情,请参见 词汇表。
- 返回:
- A形状为 (n_samples, n_samples) 的稀疏矩阵
图,其中 A[i, j] 被赋予连接 i 到 j 的边的权重。矩阵采用 CSR 格式。
另请参见
K 近邻图
计算 X 中点的 k-近邻的加权图。
示例
>>> X = [[0], [3], [1]] >>> from sklearn.neighbors import radius_neighbors_graph >>> A = radius_neighbors_graph(X, 1.5, mode='connectivity', ... include_self=True) >>> A.toarray() array([[1., 0., 1.], [0., 1., 0.], [1., 0., 1.]])