उत्तर: वेक्टर में निकटतम मान कैसे ज्ञात करें


आप R में दो वैक्टर के तत्वों के बीच निकटतम मान खोजने के लिए निम्नलिखित मूल वाक्यविन्यास का उपयोग कर सकते हैं:

 #define cut points
cuts <- c(-Inf, vector2[-1]-diff(vector2)/2, Inf)

#for each value in vector1, find closest value in vector2
cut(vector1, breaks=cuts, labels=vector2)

निम्नलिखित उदाहरण दिखाता है कि व्यवहार में इस वाक्यविन्यास का उपयोग कैसे करें।

उदाहरण: आर में एक वेक्टर में निकटतम मान ढूँढना

मान लीजिए कि हमारे पास R में निम्नलिखित दो वेक्टर हैं:

 #definevectors
vector1 <- c(1, 2, 3, 4, 5, 6, 7, 8, 9, 10)
vector2 <- c(3, 5, 8, 11)

अब मान लीजिए कि पहले वेक्टर में प्रत्येक मान के लिए, हम दूसरे वेक्टर में निकटतम मान खोजना चाहते हैं।

ऐसा करने के लिए हम निम्नलिखित सिंटैक्स का उपयोग कर सकते हैं:

 #define cut points
cuts <- c(-Inf, vector2[-1]-diff(vector2)/2, Inf)

#for each value in vector1, find closest value in vector2
cut(vector1, breaks=cuts, labels=vector2)

 [1] 3 3 3 3 5 5 8 8 8 11

यहां परिणाम की व्याख्या करने का तरीका बताया गया है:

  • वेक्टर1 (1) के पहले मान के लिए, वेक्टर2 का निकटतम मान 3 है।
  • वेक्टर1 (2) के दूसरे मान के लिए, वेक्टर2 का निकटतम मान 3 है।
  • वेक्टर1 (3) के तीसरे मान के लिए, वेक्टर2 का निकटतम मान 3 है।
  • वेक्टर1 (4) के चौथे मान के लिए, वेक्टर2 का निकटतम मान 3 है।
  • वेक्टर1 (5) के पांचवें मान के लिए, वेक्टर2 का निकटतम मान 5 है।

और इसी तरह।

ध्यान दें : यह विधि मानती है कि दूसरे वेक्टर का मान सख्ती से बढ़ रहा है। यदि आपने पहले से ऐसा नहीं किया है, तो आपको पहले दूसरे वेक्टर को सॉर्ट करने की आवश्यकता हो सकती है।

अतिरिक्त संसाधन

निम्नलिखित ट्यूटोरियल बताते हैं कि आर में अन्य सामान्य कार्य कैसे करें:

आर में प्रति समूह माध्य की गणना कैसे करें
आर में कॉलमों का औसत कैसे निकालें
आर में विशिष्ट कॉलमों का योग कैसे करें

एक टिप्पणी जोड़ने

आपका ईमेल पता प्रकाशित नहीं किया जाएगा. आवश्यक फ़ील्ड चिह्नित हैं *