我正在使用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)
只是出于好奇:是否有一个功能可以立即使用?时间在这里并不重要,因为我不处理非常大的数组。但是该功能应提供不同种类的指标。
答案 0 :(得分:1)
您可以使用numpy.apply_along_axis
方法将给定的函数应用于每一行。