sklearn.metrics.pairwise_distances_argmin_min

sklearn.metrics.pairwise_distances_argmin_min(X, Y, *, axis=1, metric='euclidean', metric_kwargs=None)

源码

计算一个点与一组点之间的最小距离。

此函数为X中的每一行计算最接近(根据指定距离)的Y行的索引。还返回最小距离。

这主要等同于调用:

(pairwise_distances(X,Y = Y,metric = metric).argmin(axis = axis),

pairwise_distances(X,Y = Y,metric = metric).min(axis = axis))

但是使用更少的内存,并且对于大型数组更快。

参数 说明
X {array-like, sparse matrix}, shape (n_samples1, n_features)
包含点的数组。
Y {array-like, sparse matrix}, shape (n_samples2, n_features)
包含点的数组。
axis int, optional, default 1
沿其计算argmin和距离的轴。
metric string or callable, default ‘euclidean’
用于距离计算的指标。可以使用scikit-learn或scipy.spatial.distance中的任何度量。
如果metric是可调用的函数,则会在每对实例(行)上调用它,并记录结果值。可调用对象应将两个数组作为输入并返回一个值,指示它们之间的距离。这适用于Scipy的指标,但效率不如将指标名称作为字符串传递。
不支持距离矩阵。
指标的有效值为:
- 来自scikit-learn:[‘cityblock’, ‘cosine’, ‘euclidean’, ‘l1’, ‘l2’, ‘manhattan’]
- 来自scipy.spatial.distance:[‘braycurtis’, ‘canberra’, ‘chebyshev’, ‘correlation’, ‘dice’, ‘hamming’, ‘jaccard’, ‘kulsinski’, ‘mahalanobis’, ‘minkowski’, ‘rogerstanimoto’, ‘russellrao’, ‘seuclidean’, ‘sokalmichener’, ‘sokalsneath’, ‘sqeuclidean’, ‘yule’]
有关这些指标的详细信息,请参见scipy.spatial.distance的文档。
metric_kwargs dict, optional
传递给指定指标函数的关键字参数。
返回值 说明
argmin numpy.ndarray
Y [argmin [i],:]是Y中最接近X [i,:]的行。
distances numpy.ndarray
distances [i]是X中第i行与Y中第argmin [i]行之间的距离。

另见:

sklearn.metrics.pairwise_distances

sklearn.metrics.pairwise_distances_argmin