计算向量和矩阵之间的距离

时间:2019-11-18 14:46:45

标签: python numpy scikit-learn scipy

我正在使用sklearn.metrics.pairwise.paired_distances计算单个向量和矩阵之间的距离。我想计算矩阵的每一行和单个向量之间的距离。由于sklearn.metrics.pairwise.paired_distances要求两个数组具有相等的维数,因此我使用np.tile创建一个矩阵,该矩阵包含向量的多个副本,以创建大小与第一个数组相同的矩阵。

示例:

import numpy as np
from sklearn.metrics.pairwise import paired_distances

# get matrix a and vector b
a = np.array([[1,2],[3,4]])
b = np.array([[5],[6]]).transpose()

# create a matrix with copies of b that has the same size as matrix a
b = np.tile(b,(a.shape[0],1))

distances = paired_distances(a,b)

只是出于好奇:是否有一个功能可以立即使用?时间在这里并不重要,因为我不处理非常大的数组。但是该功能应提供不同种类的指标。

1 个答案:

答案 0 :(得分:1)

您可以使用numpy.apply_along_axis方法将给定的函数应用于每一行。