metrics.pairwise.manhattan_distances¶
sklearn.metrics.pairwise.manhattan_distances(X, Y=None, *, sum_over_features=True)
计算X和Y中向量之间的L1距离。
在sum_over_features等于False的情况下,它返回组件方向的距离。
在用户指南中阅读更多内容。
参数 | 说明 |
---|---|
X | array_like 具有形状(n_samples_X,n_features)的数组。 |
Y | array_like, optional 具有形状(n_samples_Y,n_features)的数组。 |
sum_over_features | bool, default=True 如果为True,则函数返回成对距离矩阵,否则返回分量成对L1成对距离。不支持稀疏矩阵输入。 |
返回值 | 说明 |
---|---|
D | array 如果sum_over_features为False,则形状为(n_samples_X * n_samples_Y,n_features),并且D包含按分量的L1成对距离(即,绝对差),否则形状为(n_samples_X,n_samples_Y),并且D包含成对的L1距离。 |
注
当X和/或Y是CSR稀疏矩阵并且它们尚未采用规范格式时,此函数就地对其进行修改以使其规范。
示例
>>> from sklearn.metrics.pairwise import manhattan_distances
>>> manhattan_distances([[3]], [[3]])
array([[0.]])
>>> manhattan_distances([[3]], [[2]])
array([[1.]])
>>> manhattan_distances([[2]], [[3]])
array([[1.]])
>>> manhattan_distances([[1, 2], [3, 4]], [[1, 2], [0, 3]])
array([[0., 2.],
[4., 4.]])
>>> import numpy as np
>>> X = np.ones((1, 2))
>>> y = np.full((2, 2), 2.)
>>> manhattan_distances(X, y, sum_over_features=False)
array([[1., 1.],
[1., 1.]])