ए: रैंकिंग फ़ंक्शन में टाई.मेथड के लिए एक संपूर्ण मार्गदर्शिका


आप वेक्टर में मानों की रैंक वापस करने के लिए बेस आर में रैंक() फ़ंक्शन का उपयोग कर सकते हैं।

यह फ़ंक्शन निम्नलिखित मूल सिंटैक्स का उपयोग करता है:

रैंक(x, na.last=TRUE,ties.method=”औसत”)

सोना:

  • x : वह वेक्टर जिसमें वर्गीकृत करने के लिए मान शामिल हैं
  • na.last : यदि सत्य है, तो लुप्त मानों को अंतिम स्थान पर रखा जाता है। यदि गलत है, तो लुप्त मानों को पहले रखा जाता है।
  • टाई.विधि : संबंधों को कैसे संभालें (डिफ़ॉल्ट “औसत” है)

रैंक() फ़ंक्शन के लिए Ties.method तर्क निर्दिष्ट करता है कि संबंधों को कैसे संभाला जाना चाहिए।

यह तर्क निम्नलिखित विकल्पों को स्वीकार करता है:

  • औसत : (डिफ़ॉल्ट) प्रत्येक लिंक किए गए आइटम को औसत रैंक निर्दिष्ट करता है (तीसरे और चौथे स्थान पर मौजूद आइटम दोनों को 3.5 की रैंक प्राप्त होगी)
  • प्रथम : पहले लिंक किए गए तत्व को निम्नतम रैंक पर निर्दिष्ट करता है (तीसरे और चौथे स्थान पर मौजूद तत्वों को क्रमशः रैंक 3 और 4 प्राप्त होगा)
  • अंतिम : अंतिम लिंक किए गए तत्व को निम्नतम रैंक पर निर्दिष्ट करता है (तीसरे और चौथे स्थान पर मौजूद तत्वों को क्रमशः रैंक 4 और 3 प्राप्त होगा)
  • न्यूनतम : प्रत्येक लिंक किए गए आइटम को निम्नतम रैंक पर असाइन करता है (तीसरे और चौथे स्थान पर मौजूद आइटम दोनों को 3 की रैंक प्राप्त होगी)
  • अधिकतम : प्रत्येक लिंक किए गए आइटम को उच्चतम रैंक प्रदान करता है (तीसरे और चौथे स्थान वाले आइटम दोनों को 4 की रैंक प्राप्त होगी)
  • यादृच्छिक : प्रत्येक बंधे हुए तत्व को एक यादृच्छिक रैंक प्रदान करता है (तीसरे और चौथे स्थान के लिए बंधे तत्वों में से कोई भी रैंक प्राप्त कर सकता है)

निम्नलिखित उदाहरण दिखाते हैं कि आर में निम्नलिखित डेटा फ्रेम के साथ व्यवहार में प्रत्येक विकल्प का उपयोग कैसे करें:

 #create data frame
df <- data. frame (player=c('A', 'B', 'C', 'D', 'E'),
                 dots=c(5, 8, 10, 10, 17))

#view data frame
df

  player points
1 to 5
2 B 8
3 C 10
4 D 10
5 E 17

उदाहरण 1: Ties.method=”average” के साथ रैंक() का उपयोग करें

निम्नलिखित कोड दिखाता है कि एक नया कॉलम कैसे बनाया जाए जो अंक कॉलम के मूल्य के आधार पर प्रत्येक खिलाड़ी को रैंक निर्दिष्ट करने के लिए Ties.method=’औसत’ के साथ रैंक() का उपयोग करता है:

 #create new column that ranks players based on their points value
df$points_rank = rank(df$points, ties. method = “ average ”)

#view updated data frame
df

  player points points_rank
1 to 5 1.0
2 B 8 2.0
3 C 10 3.5
4 D 10 3.5
5 E 17 5.0

चूँकि खिलाड़ी C और D के अंक समान थे और वे स्थान 3 और 4 पर थे, इसलिए उन दोनों को उनकी रैंकिंग औसत प्राप्त हुई: 3.5

उदाहरण 2: Ties.method=”first” के साथ रैंक() का उपयोग करें

निम्नलिखित कोड दिखाता है कि एक नया कॉलम कैसे बनाया जाए जो अंक कॉलम के मूल्य के आधार पर प्रत्येक खिलाड़ी को रैंक आवंटित करने के लिए Ties.method=’first’ के साथ रैंक() का उपयोग करता है:

 #create new column that ranks players based on their points value
df$points_rank = rank(df$points, ties. method = " first ")

#view updated data frame
df

  player points points_rank
1 to 5 1
2 B 8 2
3 C 10 3
4 D 10 4
5 E 17 5

चूँकि खिलाड़ी C और D के अंक समान थे और उन्होंने स्थान 3 और 4 पर कब्जा कर लिया था, इन दोनों के बीच के पहले खिलाड़ी (खिलाड़ी “C”) को सबसे कम रैंक प्राप्त हुई।

उदाहरण 3: Ties.method=”last” के साथ रैंक() का उपयोग करें

निम्नलिखित कोड दिखाता है कि एक नया कॉलम कैसे बनाया जाए जो अंक कॉलम के मूल्य के आधार पर प्रत्येक खिलाड़ी को रैंक निर्दिष्ट करने के लिए Ties.method=”last” के साथ रैंक() का उपयोग करता है:

 #create new column that ranks players based on their points value
df$points_rank = rank(df$points, ties. method = " last ")

#view updated data frame
df

  player points points_rank
1 to 5 1
2 B 8 2
3 C 10 4
4 D 10 3
5 E 17 5

चूँकि खिलाड़ी C और D के अंक समान थे और उन्होंने स्थान 3 और 4 पर कब्जा कर लिया था, इन दोनों के बीच के अंतिम खिलाड़ी (खिलाड़ी “D”) को सबसे कम रैंक प्राप्त हुई।

उदाहरण 4: Ties.method=”min” के साथ रैंक() का उपयोग करें

निम्नलिखित कोड दिखाता है कि एक नया कॉलम कैसे बनाया जाए जो अंक कॉलम के मूल्य के आधार पर प्रत्येक खिलाड़ी को रैंक निर्दिष्ट करने के लिए Ties.method=”min” के साथ रैंक() का उपयोग करता है:

 #create new column that ranks players based on their points value
df$points_rank = rank(df$points, ties. method = " min ")

#view updated data frame
df

  player points points_rank
1 to 5 1
2 B 8 2
3 C 10 3
4 D 10 3
5 E 17 5

चूँकि खिलाड़ी C और D के अंक समान थे और वे स्थान 3 और 4 पर थे, इसलिए दोनों खिलाड़ियों को न्यूनतम रैंक प्राप्त हुई: 3

उदाहरण 5: Ties.method=”max” के साथ रैंक() का उपयोग करें

निम्नलिखित कोड दिखाता है कि एक नया कॉलम कैसे बनाया जाए जो अंक कॉलम के मूल्य के आधार पर प्रत्येक खिलाड़ी को रैंक निर्दिष्ट करने के लिए Ties.method=”max” के साथ रैंक() का उपयोग करता है:

 #create new column that ranks players based on their points value
df$points_rank = rank(df$points, ties. method = " max ")

#view updated data frame
df

  player points points_rank
1 to 5 1
2 B 8 2
3 C 10 4
4 D 10 4
5 E 17 5

चूँकि खिलाड़ी C और D के अंक समान थे और वे स्थान 3 और 4 पर थे, इसलिए दोनों खिलाड़ियों को अधिकतम रैंक प्राप्त हुई: 4

उदाहरण 6: Ties.method=”random” के साथ रैंक() का उपयोग करें

निम्नलिखित कोड दिखाता है कि एक नया कॉलम कैसे बनाया जाए जो अंक कॉलम के मूल्य के आधार पर प्रत्येक खिलाड़ी को रैंक निर्दिष्ट करने के लिए Ties.method=”random” के साथ रैंक() का उपयोग करता है:

 #create new column that ranks players based on their points value
df$points_rank = rank(df$points, ties. method = " random ")

#view updated data frame
df

  player points points_rank
1 to 5 1
2 B 8 2
3 C 10 4
4 D 10 3
5 E 17 5

चूँकि खिलाड़ी C और D के अंक समान थे और वे स्थान 3 और 4 पर थे, प्रत्येक खिलाड़ी को यादृच्छिक रूप से 3 या 4 का रैंक दिया गया था।

ध्यान दें कि जब आप टाई.मेथड के लिए “रैंडम” का उपयोग करते हैं, तो आपके द्वारा कोड चलाने पर प्रत्येक मान को सौंपी गई रैंक हर बार बदल सकती है।

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

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

आर में सॉर्ट(), ऑर्डर() और रैंक() का उपयोग कैसे करें
आर में प्रतिशतक रैंक की गणना कैसे करें
Dplyr का उपयोग करके समूह के अनुसार कैसे क्रमबद्ध करें

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

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