scipy.spatial.distance.pdist
возвращает сжатую матрицу расстояний. Из документация:
Возвращает матрицу сокращенных расстояний Y. Для каждого и (где) метрика dist (u = X [i], v = X [j]) вычисляется и сохраняется в записи ij.
Я думал, что ij
означает i*j
. Но я думаю, что я ошибаюсь. Рассмотрим
X = array([[1,2], [1,2], [3,4]])
dist_matrix = pdist(X)
то в документации указано, что dist(X[0], X[2])
должен быть dist_matrix[0*2]
. Однако dist_matrix[0*2]
равно 0, а не 2.8, как и должно быть.
Какую формулу я должен использовать для доступа к подобию двух векторов, заданных i
и j
?