R에서 유클리드 거리를 계산하는 방법(예제 포함)
두 벡터 A와 B 사이의 유클리드 거리는 다음과 같이 계산됩니다.
유클리드 거리 = √ Σ(A i -B i ) 2
R에서 두 벡터 사이의 유클리드 거리를 계산하기 위해 다음 함수를 정의할 수 있습니다.
euclidean <- function (a, b) sqrt ( sum ((a - b)^2))
그런 다음 이 함수를 사용하여 두 벡터 사이의 유클리드 거리를 찾을 수 있습니다.
#define two vectors a <- c(2, 6, 7, 7, 5, 13, 14, 17, 11, 8) b <- c(3, 5, 5, 3, 7, 12, 13, 19, 22, 7) #calculate Euclidean distance between vectors euclid(a, b) [1] 12.40967
두 벡터 사이의 유클리드 거리는 12.40967 입니다.
이 함수를 사용하여 데이터 프레임의 두 열 사이의 유클리드 거리를 계산할 수도 있습니다.
#define data frame df <- data.frame(a=c(3, 4, 4, 6, 7, 14, 15), b=c(4, 8, 8, 9, 14, 13, 7), c=c(7, 7, 8, 5, 15, 11, 8), d=c(9, 6, 6, 7, 6, 15, 19)) #calculate Euclidean distance between columns a and d euclid(df$a, df$d) [1] 7.937254
두 벡터의 길이가 같지 않으면 이 함수는 경고 메시지를 생성합니다.
#define two vectors of unequal length a <- c(2, 6, 7, 7, 5, 13, 14) b <- c(3, 5, 5, 3, 7, 12, 13, 19, 22, 7) #attempt to calculate Euclidean distance between vectors euclid(a, b) [1] 23.93742 Warning message: In a - b: longer object length is not a multiple of shorter object length
유클리드 거리에 대해 자세히 알아보려면 이 Wikipedia 페이지를 참조하세요 .
추가 리소스
R에서 맨해튼까지의 거리를 계산하는 방법
R에서 Minkowski 거리를 계산하는 방법
R에서 해밍 거리를 계산하는 방법
R에서 Mahalanobis 거리를 계산하는 방법
R에서 Levenshtein 거리를 계산하는 방법