Подтвердить что ты не робот

Евклидово расстояние двух векторов

Как найти евклидово расстояние двух векторов:

x1 <- rnorm(30)
x2 <- rnorm(30)
4b9b3361

Ответ 1

Используйте функцию dist(), но вам нужно сформировать матрицу из двух входов для первого аргумента в dist():

dist(rbind(x1, x2))

Ответ 2

Как определено в Wikipedia, это должно сделать это.

euc.dist <- function(x1, x2) sqrt(sum((x1 - x2) ^ 2))

Также существует функция rdist в пакете fields, которая может быть полезна. См. здесь.


EDIT: Изменен оператор ** на ^. Спасибо, Гэвин.

Ответ 3

попробуйте использовать это:

sqrt(sum((x1-x2)^2))