Dplyr का उपयोग करके एकाधिक कॉलम में डेटा फ़्रेम को कैसे जोड़ें


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

 library (dplyr)

left_join(df1, df2, by=c(' x1 '=' x2 ', ' y1 '=' y2 '))

यह विशेष वाक्यविन्यास बाएँ जुड़ाव का प्रदर्शन करेगा जहाँ निम्नलिखित स्थितियाँ सत्य हैं:

  • df1 के कॉलम x1 का मान df2 के कॉलम x2 के मान से मेल खाता है।
  • df1 के कॉलम y1 का मान df2 के कॉलम y2 के मान से मेल खाता है।

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

उदाहरण: dplyr का उपयोग करके अनेक स्तंभों को जोड़ें

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

 #define first data frame
df1 = data. frame (team=c('A', 'A', 'B', 'B'),
                 pos=c('G', 'F', 'F', 'G'),
                 dots=c(18, 22, 19, 14))

df1

  team pos points
1 AG 18
2 AF 22
3 BF 19
4 BG 14

#define second data frame
df2 = data. frame (team_name=c('A', 'A', 'B', 'C', 'C'),
                 position=c('G', 'F', 'F', 'G', 'F'),
                 assists=c(4, 9, 8, 6, 5))

df2

  team_name position assists
1 GA 4
2 AF 9
3 BF 8
4 CG 6
5 CF 5

हम दो कॉलमों के आधार पर लेफ्ट जॉइन करने के लिए dplyr में निम्नलिखित सिंटैक्स का उपयोग कर सकते हैं:

 library (dplyr)

#perform left join based on multiple columns
df3 <- left_join(df1, df2, by=c(' team '=' team_name ', ' pos '=' position '))

#view result
df3

  team pos points assists
1 AG 18 4
2 AF 22 9
3 BF 19 8
4 BG 14 NA

परिणामी डेटा फ़्रेम में df1 से सभी पंक्तियाँ और केवल df2 से पंक्तियाँ शामिल हैं जहाँ टीम और स्थिति मान मेल खाते हैं।

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

 library (dplyr)

#perform left join based on multiple columns
df3 <- left_join(df1, df2, by=c(' team ', ' position '))

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

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

आर में लेफ्ट जॉइन कैसे करें
आर में राइट जॉइन कैसे करें
आर में इनर जॉइन कैसे करें
आर में आउटर जॉइन कैसे करें

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

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