Dplyr में across() फ़ंक्शन का उपयोग कैसे करें (3 उदाहरण)


आप एकाधिक कॉलम में परिवर्तन लागू करने के लिए R में dplyr पैकेज से cross() फ़ंक्शन का उपयोग कर सकते हैं।

इस सुविधा का उपयोग करने के अनगिनत तरीके हैं , लेकिन निम्नलिखित विधियाँ कुछ सामान्य उपयोगों को दर्शाती हैं:

विधि 1: एक फ़ंक्शन को एकाधिक कॉलम पर लागू करें

 #multiply values in col1 and col2 by 2
df %>% 
  mutate(across(c(col1, col2), function (x) x*2))

विधि 2: एकाधिक स्तंभों के लिए सारांश आँकड़े की गणना करें

 #calculate mean of col1 and col2
df %>%
  summarise(across(c(col1, col2), mean, na. rm = TRUE ))

विधि 3: एकाधिक स्तंभों के लिए एकाधिक सारांश सांख्यिकी की गणना करें

 #calculate mean and standard deviation for col1 and col2
df %>%
  summarise(across(c(col1, col2), list(mean=mean, sd=sd), na. rm = TRUE ))

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

 #create data frame
df <- data. frame (conf=c('East', 'East', 'East', 'West', 'West', 'West'),
                 points=c(22, 25, 29, 13, 22, 30),
                 rebounds=c(12, 10, 6, 6, 8, 11))

#view data frame
df

  conf points rebounds
1 East 22 12
2 East 25 10
3 East 29 6
4 West 13 6
5 West 22 8
6 West 30 11

उदाहरण 1: एक फ़ंक्शन को एकाधिक कॉलम पर लागू करें

निम्नलिखित कोड दिखाता है कि पॉइंट और रिबाउंड कॉलम में मानों को 2 से गुणा करने के लिए पार () फ़ंक्शन का उपयोग कैसे करें:

 library (dplyr)

#multiply values in points and rebounds columns by 2
df %>% 
  mutate(across(c(points, rebounds), function (x) x*2))

  conf points rebounds
1 East 44 24
2 East 50 20
3 East 58 12
4 West 26 12
5 West 44 16
6 West 60 22

उदाहरण 2: अनेक स्तंभों के लिए सारांश आँकड़े की गणना करें

निम्नलिखित कोड दिखाता है कि पॉइंट और रिबाउंड कॉलम के औसत मूल्य की गणना करने के लिए एक्रॉस () फ़ंक्शन का उपयोग कैसे करें:

 library (dplyr)

#calculate mean value of points an rebounds columns
df %>%
  summarise(across(c(points, rebounds), mean, na. rm = TRUE ))

  rebound points
1 23.5 8.833333

ध्यान दें कि हम डेटा फ़्रेम में सभी संख्यात्मक स्तंभों के लिए सारांश आँकड़ों की स्वचालित रूप से गणना करने के लिए is.numeric फ़ंक्शन का भी उपयोग कर सकते हैं:

 library (dplyr)

#calculate mean value for every numeric column in data frame
df %>%
  summarise(across(where(is. numeric ), mean, na. rm = TRUE ))

  rebound points
1 23.5 8.833333

उदाहरण 3: अनेक स्तंभों के लिए अनेक सारांश आँकड़ों की गणना करें

निम्नलिखित कोड दिखाता है कि अंक और रिबाउंड कॉलम के औसत और मानक विचलन की गणना करने के लिए पार () फ़ंक्शन का उपयोग कैसे करें:

 library (dplyr)

#calculate mean and standard deviation for points and rebounds columns
df %>%
  summarise(across(c(points, rebounds), list(mean=mean, sd=sd), na. rm = TRUE ))

  points_mean points_sd rebounds_mean rebounds_sd
1 23.5 6.156298 8.833333 2.562551

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

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

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

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

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

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