आर में समूह द्वारा पहले एन मानों का चयन कैसे करें


आप R में समूह द्वारा शीर्ष N मानों का चयन करने के लिए निम्न में से किसी भी विधि का उपयोग कर सकते हैं:

विधि 1: प्रति समूह पहले एन मान चुनें (संबंधों पर ध्यान न दें)

 library (dplyr)

#select top 5 values by group
df %>% 
  arrange(desc(values_column)) %>% 
  group_by(group_column) %>%
  slice(1:5)

विधि 2: समूह द्वारा पहले एन मानों का चयन करें (संबंध शामिल करें)

 library (dplyr)

#select top 5 values by group
df %>%
  group_by(group_column) %>%
  top_n(5, values_column)

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

 #create data frame
df <- data. frame (team=c('A', 'A', 'A', 'A', 'B', 'B', 'B', 'B'),
                 points=c(19, 22, 15, NA, 14, 25, 25, 25),
                 rebounds=c(10, 6, 3, 7, 11, 13, 9, 12))

#view data frame
df

  team points rebounds
1 A 19 10
2 to 22 6
3 to 15 3
4 A NA 7
5 B 14 11
6 B 25 13
7 B 25 9
8 B 25 12

उदाहरण 1: प्रति समूह पहले एन मान का चयन करें (संबंधों को अनदेखा करें)

निम्नलिखित कोड दिखाता है कि टीम द्वारा समूहीकृत उच्चतम बिंदु मान वाली पहली 2 पंक्तियों का चयन कैसे करें:

 library (dplyr)

#select top 2 rows with highest points values, grouped by team 
df %>% 
  arrange(desc(points)) %>% 
  group_by(team) %>%
  slice(1:2)

# A tibble: 4 x 3
# Groups: team [2]
  team points rebounds
        
1 to 22 6
2 A 19 10
3 B 25 13
4 B 25 9

परिणाम में प्रत्येक टीम के लिए बिंदु उच्चतम मान वाली दो पंक्तियाँ शामिल हैं।

ध्यान दें कि टीम बी के लिए, वास्तव में तीन पंक्तियाँ थीं जो बिंदु उच्चतम मान ( 25 ) के लिए बंधी थीं, लेकिन आउटपुट में केवल दो पंक्तियाँ लौटाई गईं।

यह विधि केवल लिंकों को अनदेखा करती है।

उदाहरण 2: प्रति समूह पहले एन मान का चयन करें (संबंध शामिल करें)

निम्नलिखित कोड दिखाता है कि टीम द्वारा समूहीकृत उच्चतम बिंदु मान वाली पहली 2 पंक्तियों का चयन कैसे करें:

 library (dplyr)

#select top 2 rows with highest points values, grouped by team 
df %>%
  group_by(team) %>%
  top_n(2, dots)

# A tibble: 5 x 3
# Groups: team [2]
  team points rebounds
        
1 A 19 10
2 to 22 6
3 B 25 13
4 B 25 9
5 B 25 12

परिणाम में प्रत्येक टीम के लिए बिंदु उच्चतम मान वाली दो पंक्तियाँ शामिल हैं।

ध्यान दें कि टीम बी के लिए, उच्चतम बिंदु मान ( 25 ) के लिए तीन पंक्तियाँ बाँधी गई थीं, इसलिए इस विधि ने उन तीन पंक्तियों को अंतिम परिणाम में शामिल किया।

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

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

उन पंक्तियों का चयन कैसे करें जहां मान आर में किसी भी कॉलम में दिखाई देता है
आर में विशिष्ट कॉलम का चयन कैसे करें
आर में इंडेक्स द्वारा कॉलम का चयन कैसे करें

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

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