आर में मैनहट्टन दूरी की गणना कैसे करें (उदाहरण के साथ)
दो वैक्टर, ए और बी के बीच मैनहट्टन की दूरी की गणना निम्नानुसार की जाती है:
Σ|ए आई – बी आई |
जहां i प्रत्येक वेक्टर का i वां तत्व है।
इस दूरी का उपयोग किन्हीं दो वैक्टरों के बीच असमानता को मापने के लिए किया जाता है और आमतौर पर कई अलग-अलग मशीन लर्निंग एल्गोरिदम में उपयोग किया जाता है।
यह ट्यूटोरियल आर में मैनहट्टन दूरी की गणना के कुछ उदाहरण प्रदान करता है।
उदाहरण 1: दो सदिशों के बीच मैनहट्टन की दूरी
निम्नलिखित कोड दिखाता है कि आर में दो वैक्टरों के बीच मैनहट्टन दूरी की गणना करने के लिए एक कस्टम फ़ंक्शन कैसे बनाया जाए:
#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 हो जाती है।
हम हाथ से मैनहट्टन की दूरी की तुरंत गणना करके इसकी पुष्टि कर सकते हैं कि यह सही है:
Σ|ए आई – बी आई | = |2-5| + |4-5| + |4-7| + |6-8| = 3 + 1 + 3 + 2 = 9 ।
उदाहरण 2: मैट्रिक्स में वैक्टर के बीच मैनहट्टन की दूरी
मैट्रिक्स में कई वैक्टरों के बीच मैनहट्टन दूरी की गणना करने के लिए, हम R में निर्मित dist() फ़ंक्शन का उपयोग कर सकते हैं:
#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
इस आउटपुट की व्याख्या करने का तरीका यह है:
- वैक्टर ए और बी के बीच मैनहट्टन की दूरी 9 है।
- वैक्टर ए और सी के बीच मैनहट्टन की दूरी 19 है।
- वैक्टर ए और डी के बीच मैनहट्टन की दूरी 7 है।
- वैक्टर बी और सी के बीच मैनहट्टन की दूरी 10 है।
- वैक्टर बी और डी के बीच मैनहट्टन की दूरी 16 है।
- वैक्टर सी और डी के बीच मैनहट्टन की दूरी 26 है।
ध्यान दें कि मैट्रिक्स में प्रत्येक वेक्टर की लंबाई समान होनी चाहिए।
अतिरिक्त संसाधन
आर में यूक्लिडियन दूरी की गणना कैसे करें
आर में महालनोबिस दूरी की गणना कैसे करें
आर में मिन्कोव्स्की दूरी की गणना कैसे करें