Dplyr का उपयोग करके पंक्तियों को कस्टम क्रम में कैसे व्यवस्थित करें


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

 library (dplyr)

#arrange rows in custom order based on values in 'team' column
df %>%
  arrange(match(team, c(' C ', ' B ', ' D ', ' A ')), points)

यह विशेष उदाहरण टीम कॉलम मानों के लिए कस्टम ऑर्डर सी, बी, डी, ए के आधार पर पंक्तियों को व्यवस्थित करता है, और फिर आरोही क्रम में पॉइंट कॉलम मानों के अनुसार।

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

उदाहरण: dplyr का उपयोग करके पंक्तियों को कस्टम क्रम में कैसे व्यवस्थित करें

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

 #create data frame
df <- data. frame (team=c('A', 'B', 'A', 'A', 'B', 'D', 'C', 'D', 'D', 'C'),
                 points=c(12, 20, 14, 34, 29, 22, 28, 15, 20, 13))

#view data frame
df

   team points
1 to 12
2 B 20
3 to 14
4 to 34
5 B 29
6 D 22
7 C 28
8 D 15
9 D 20
10 C 13

यदि हम टीम कॉलम में मानों के आधार पर पंक्तियों को क्रमबद्ध करने के लिए अरेंज() फ़ंक्शन का उपयोग करते हैं, तो पॉइंट कॉलम में मानों के आधार पर, अरेंज() फ़ंक्शन डिफ़ॉल्ट वर्णमाला क्रम के आधार पर पंक्तियों को सॉर्ट करेगा :

 library (dplyr)

#arrange rows in ascending order by team, then by points
df %>%
  arrange(team, points)

   team points
1 to 12
2 to 14
3 to 34
4 B 20
5 B 29
6 C 13
7 C 28
8 D 15
9 D 20
10 D 22

पंक्तियों को टीम के अनुसार वर्णानुक्रम में, फिर अंकों के अनुसार आरोही क्रम में सूचीबद्ध किया जाता है।

हालाँकि, मान लें कि हम इसके बजाय टीम मानों के निम्नलिखित क्रम के आधार पर पंक्तियों को व्यवस्थित करना चाहते हैं: सी, बी, डी, ए।

हम ऐसा करने के लिए अरेंज () फ़ंक्शन के भीतर मैच() फ़ंक्शन का उपयोग कर सकते हैं:

 library (dplyr)

#arrange rows in custom order based on 'team' column, then by 'points' column
df %>%
  arrange(match(team, c(' C ', ' B ', ' D ', ' A ')), points)

   team points
1 C 13
2 C 28
3 B 20
4 B 29
5 D 15
6 D 20
7 D 22
8 to 12
9 to 14
10 to 34

पंक्तियों को टीम कॉलम के लिए हमारे द्वारा निर्दिष्ट कस्टम क्रम में व्यवस्थित किया गया है (सी, बी, डी, ए), फिर अंक कॉलम के अनुसार।

नोट #1 : मैच फ़ंक्शन को टीम कॉलम में मानों की पंक्ति अनुक्रमणिका मिलती है, फिर अरेंज फ़ंक्शन इन सूचकांक मानों के आधार पर सॉर्ट करने में सक्षम होता है।

नोट #2 : बिंदु मानों को घटाकर व्यवस्थित करने के लिए, इसके बजाय बस desc(points) का उपयोग करें।

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

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

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

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

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