Як обчислити відстань до манхеттена в r (з прикладами)
Манхеттенська відстань між двома векторами, A і B , обчислюється наступним чином:
Σ|a i – b i |
де i – i -й елемент кожного вектора.
Ця відстань використовується для вимірювання відмінності між будь-якими двома векторами та зазвичай використовується в багатьох різних алгоритмах машинного навчання .
У цьому підручнику наведено кілька прикладів обчислення манхеттенської відстані в R.
Приклад 1: Манхеттенська відстань між двома векторами
У наступному коді показано, як створити спеціальну функцію для обчислення манхеттенської відстані між двома векторами в R:
#create function to calculate Manhattan distance manhattan_dist <- function (a, b){ dist <- abs (ab) dist < -sum (dist) return (dist) } #define two vectors a <- c(2, 4, 4, 6) b <- c(5, 5, 7, 8) #calculate Manhattan distance between vectors manhattan_dist(a, b) [1] 9
Манхеттенська відстань між цими двома векторами виявляється рівною 9 .
Ми можемо підтвердити, що це правильно, швидко обчисливши відстань до Манхеттена вручну:
Σ|a i – b i | = |2-5| + |4-5| + |4-7| + |6-8| = 3 + 1 + 3 + 2 = 9 .
Приклад 2: Манхеттенська відстань між векторами в матриці
Щоб обчислити манхеттенську відстань між декількома векторами в матриці, ми можемо використати функцію dist() , вбудовану в R:
#create four vectors a <- c(2, 4, 4, 6) b <- c(5, 5, 7, 8) c <- c(9, 9, 9, 8) d <- c(1, 2, 3, 3) #bind vectors into one matrix mat <- rbind(a, b, c, d) #calculate Manhattan distance between each vector in the matrix dist(mat, method = " manhattan ") ABC b 9 c 19 10 d 7 16 26
Спосіб інтерпретації цього результату:
- Манхеттенська відстань між векторами a і b дорівнює 9 .
- Манхеттенська відстань між векторами a і c дорівнює 19 .
- Манхеттенська відстань між векторами a і d дорівнює 7 .
- Манхеттенська відстань між векторами b і c дорівнює 10 .
- Манхеттенська відстань між векторами b і d дорівнює 16 .
- Манхеттенська відстань між векторами c і d дорівнює 26 .
Зверніть увагу, що кожен вектор у матриці повинен мати однакову довжину.
Додаткові ресурси
Як обчислити евклідову відстань у R
Як розрахувати відстань Махаланобіса в R
Як розрахувати відстань Мінковського в R