आर में डिस्ट फ़ंक्शन का उपयोग कैसे करें (उदाहरण के साथ)
R में dist() फ़ंक्शन का उपयोग दूरी मैट्रिक्स की गणना करने के लिए किया जा सकता है, जो मैट्रिक्स या डेटा फ़्रेम में पंक्तियों के बीच की दूरी को प्रदर्शित करता है।
यह फ़ंक्शन निम्नलिखित मूल सिंटैक्स का उपयोग करता है:
जिला(x, विधि=’यूक्लिडियन’)
सोना:
- x: मैट्रिक्स या डेटा ब्लॉक का नाम।
- विधि: उपयोग की जाने वाली दूरी माप। डिफ़ॉल्ट “यूक्लिडियन” है, लेकिन विकल्पों में “अधिकतम”, “मैनहट्टन”, “कैनबरा”, “बाइनरी” या “मिन्कोव्स्की” शामिल हैं।
निम्नलिखित उदाहरण दिखाते हैं कि निम्नलिखित डेटा फ़्रेम के साथ व्यवहार में इस फ़ंक्शन का उपयोग कैसे करें:
#define 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) #row bind four vectors into matrix mat <- rbind(a, b, c, d) #view matrix mast [,1] [,2] [,3] [,4] a 2 4 4 6 b 5 5 7 8 c 9 9 9 8 d 1 2 3 3
उदाहरण 1: यूक्लिडियन दूरी की गणना करने के लिए dist() का उपयोग करें
दो वैक्टर ए और बी के बीच यूक्लिडियन दूरी की गणना निम्नानुसार की जाती है:
यूक्लिडियन दूरी = √ Σ(ए आई -बी आई ) 2
निम्नलिखित कोड दिखाता है कि दूरी मैट्रिक्स की गणना कैसे करें जो आर में मैट्रिक्स की प्रत्येक पंक्ति के बीच यूक्लिडियन दूरी दिखाता है:
#calculate Euclidean distance between each row in matrix
dist(mat)
ABC
b4.795832
c 10.148892 6.000000
d 3.872983 8.124038 13.190906
यहां परिणाम की व्याख्या करने का तरीका बताया गया है:
- रेखा a और रेखा b के बीच की यूक्लिडियन दूरी 4.795832 है।
- रेखा a और रेखा c के बीच की यूक्लिडियन दूरी 10.148892 है।
- रेखा a और रेखा d के बीच की यूक्लिडियन दूरी 3.872983 है।
- रेखा b और रेखा c के बीच की यूक्लिडियन दूरी 6.000000 है।
- रेखा बी और रेखा डी के बीच यूक्लिडियन दूरी 8.124038 है।
- रेखा c और रेखा d के बीच की यूक्लिडियन दूरी 13.190906 है।
उदाहरण 2: अधिकतम दूरी की गणना करने के लिए dist() का उपयोग करें
दो वैक्टर, ए और बी के बीच अधिकतम दूरी की गणना सभी जोड़ीदार तत्वों के बीच अधिकतम अंतर के रूप में की जाती है।
निम्नलिखित कोड दिखाता है कि दूरी मैट्रिक्स की गणना कैसे करें जो आर में मैट्रिक्स की प्रत्येक पंक्ति के बीच अधिकतम दूरी प्रदर्शित करता है:
#calculate Maximum distance between each row in matrix dist(mat, method=" maximum ") ABC b 3 c 7 4 d 3 5 8
उदाहरण 3: कैनबरा से दूरी की गणना करने के लिए dist() का उपयोग करें
दो वैक्टर ए और बी के बीच कैनबरा दूरी की गणना निम्नानुसार की जाती है:
कैनबरा से दूरी = Σ |A i -B i | / | ऐ | + | बीजे |
निम्नलिखित कोड दिखाता है कि दूरी मैट्रिक्स की गणना कैसे करें जो आर में मैट्रिक्स की प्रत्येक पंक्ति के बीच कैनबरा दूरी दिखाता है:
#calculate Canberra distance between each row in matrix dist(mat, method=" canberra ") ABC b 0.9552670 c 1.5484515 0.6964286 d 1.1428571 1.9497835 2.3909091
उदाहरण 4: बाइनरी दूरी की गणना करने के लिए dist() का उपयोग करें
दो वैक्टर, ए और बी के बीच की द्विआधारी दूरी की गणना उन तत्वों के अनुपात के रूप में की जाती है जो दो वैक्टर साझा करते हैं।
निम्नलिखित कोड दिखाता है कि दूरी मैट्रिक्स की गणना कैसे करें जो आर में मैट्रिक्स की प्रत्येक पंक्ति के बीच बाइनरी दूरी दिखाता है:
#calculate Binary distance between each row in matrix dist(mat, method=" binary ") ABC b 0 c 0 0 d 0 0 0
उदाहरण 5: मिन्कोव्स्की दूरी की गणना करने के लिए dist() का उपयोग करें
दो वैक्टर ए और बी के बीच मिन्कोव्स्की दूरी की गणना निम्नानुसार की जाती है:
मिन्कोव्स्की दूरी = (Σ|a i – b i | p ) 1/p
जहां i प्रत्येक वेक्टर का i वां तत्व है और p एक पूर्णांक है।
निम्नलिखित कोड दिखाता है कि दूरी मैट्रिक्स की गणना कैसे करें जो आर में मैट्रिक्स की प्रत्येक पंक्ति के बीच मिंकोव्स्की दूरी (पी = 3 का उपयोग करके) दिखाती है:
#calculate Minkowski distance between each row in matrix dist(mat, method=" minkowski ", p= 3 ) ABC b 3.979057 c 8.439010 5.142563 d 3.332222 6.542133 10.614765
अतिरिक्त संसाधन
आर में जैककार्ड समानता की गणना कैसे करें
आर में कोसाइन समानता की गणना कैसे करें
आर में डॉट उत्पाद की गणना कैसे करें