Dplyr का उपयोग करके डेटा को समूहीकृत और फ़िल्टर कैसे करें


आप R में dplyr पैकेज का उपयोग करके डेटा को समूहीकृत और फ़िल्टर करने के लिए निम्नलिखित मूल सिंटैक्स का उपयोग कर सकते हैं:

 df %>%
  group_by(team) %>%
  filter(any(points = = 10 ))

यह विशेष सिंटैक्स प्रति कॉलम एक डेटा फ़्रेम को समूहित करता है जिसे टीम कहा जाता है और केवल उन समूहों को फ़िल्टर करता है जहां पॉइंट कॉलम में कम से कम एक मान 10 के बराबर होता है।

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

उदाहरण: dplyr का उपयोग करके डेटा को समूहीकृत करें और फ़िल्टर करें

मान लीजिए कि हमारे पास आर में निम्नलिखित डेटा फ्रेम है जिसमें विभिन्न बास्केटबॉल खिलाड़ियों के बारे में जानकारी है:

 #create data frame
df <- data. frame (team=c('A', 'A', 'A', 'B', 'B', 'B', 'C', 'C', 'C'),
                 points=c(10, 15, 8, 4, 10, 10, 12, 12, 7))

#view data frame
df

  team points
1 to 10
2 to 15
3 to 8
4 B 4
5 B 10
6 B 10
7 C 12
8 C 12
9 C 7

हम टीम कॉलम में मान के आधार पर डेटा फ़्रेम को समूहित करने के लिए निम्नलिखित कोड का उपयोग कर सकते हैं, फिर उन सभी समूहों को फ़िल्टर कर सकते हैं जिनके पास पॉइंट कॉलम में 10 के बराबर कम से कम एक मान नहीं है:

 library (dplyr)

#group by team and filter out teams where no points value is equal to 10
df %>%
  group_by(team) %>%
  filter(any(points == 10 ))

# A tibble: 6 x 2
# Groups: team [2]
  team points
    
1 to 10
2 to 15
3 to 8
4 B 4
5 B 10
6 B 10

ध्यान दें कि सभी पंक्तियाँ जहाँ टीम “सी” के बराबर है, फ़िल्टर कर दी गई है क्योंकि टीम “सी” के लिए अंक कॉलम में 10 के बराबर कोई मान नहीं है।

ध्यान दें कि यह केवल एक फ़िल्टर का उदाहरण है जिसे हम लागू कर सकते हैं।

उदाहरण के लिए, हम एक और फ़िल्टर लागू कर सकते हैं जिसमें हम 13 से अधिक अंक कॉलम में कम से कम एक मान वाली टीमों को फ़िल्टर करते हैं:

 library (dplyr)

#group by team and filter out teams where no points value is greater than 13
df %>%
  group_by(team) %>%
  filter(any(points > 13 ))

# A tibble: 3 x 2
# Groups: team [1]
  team points
    
1 to 10
2 to 15
3 to 8

ध्यान दें कि केवल वही पंक्तियाँ रखी गई हैं जहाँ टीम “ए” के बराबर है क्योंकि यह एकमात्र टीम है जिसका कम से कम एक अंक मान 13 से अधिक है।

नोट : आप यहां dplyr में फ़िल्टर फ़ंक्शन का पूरा दस्तावेज़ पा सकते हैं।

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

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

dplyr का उपयोग करके समूह द्वारा पहली पंक्ति का चयन कैसे करें
Dplyr का उपयोग करके अनेक स्थितियों के आधार पर फ़िल्टर कैसे करें
Dplyr का उपयोग करके एक निश्चित स्ट्रिंग वाली पंक्तियों को कैसे फ़िल्टर करें

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

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