ए: कैसे जांचें कि एकाधिक कॉलम बराबर हैं या नहीं


आप यह जाँचने के लिए निम्न विधियों का उपयोग कर सकते हैं कि R में डेटा फ़्रेम में एकाधिक कॉलम बराबर हैं या नहीं:

विधि 1: जांचें कि क्या सभी कॉलम समान हैं

 library (dplyr)

#create new column that checks if all columns are equal
df <- df %>%
        rowwise %>%
        mutate(match = n_distinct(unlist(cur_data())) == 1 ) %>%
        A group()

विधि 2: जांचें कि क्या विशिष्ट कॉलम बराबर हैं

 library (dplyr)

#create new column that checks if columns 'A', 'C', and 'D' are equal
df_temp <- df %>%
             select(' A ', ' C ', ' D ') %>%
             rowwise %>%
             mutate(match = n_distinct(unlist(cur_data())) == 1 ) %>%
             A group()

#add new column to existing data frame
df$match <- df_temp$match

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

 #create data frame
df = data. frame (A=c(4, 0, 3, 3, 6, 8, 7),
                B=c(4, 2, 3, 5, 6, 4, 7),
                C=c(4, 0, 3, 3, 5, 10, 7),
                D=c(4, 0, 3, 3, 3, 8, 7))

#view data frame
df

  ABCD
1 4 4 4 4
2 0 2 0 0
3 3 3 3 3
4 3 5 3 3
5 6 6 5 3
6 8 4 10 8
7 7 7 7 7

उदाहरण 1: जांचें कि क्या सभी कॉलम बराबर हैं

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

 library (dplyr)

#create new column that checks if all columns are equal
df <- df %>%
        rowwise %>%
        mutate(match = n_distinct(unlist(cur_data())) == 1 ) %>%
        A group()

#view updated data frame
df

# A tibble: 7 x 5
      ABCD match
      
1 4 4 4 4 TRUE 
2 0 2 0 0 FALSE
3 3 3 3 3 TRUE 
4 3 5 3 3 FALSE
5 6 6 5 3 FALSE
6 8 4 10 8 FALSE
7 7 7 7 7 TRUE 

यदि प्रत्येक कॉलम का मान बराबर है, तो मिलान वाला कॉलम True लौटाता है।

अन्यथा, यह गलत लौटाता है।

ध्यान दें कि आप निम्नानुसार as.numeric() का उपयोग करके सही और गलत मानों को 1 और 0 में बदल सकते हैं:

 library (dplyr)

#create new column that checks if all columns are equal
df <- df %>%
        rowwise %>%
        mutate(match = as. numeric (n_distinct(unlist(cur_data())) == 1 )) %>%
        A group()

#view updated data frame
df

# A tibble: 7 x 5
      ABCD match
      
1 4 4 4 4 1
2 0 2 0 0 0
3 3 3 3 3 1
4 3 5 3 3 0
5 6 6 5 3 0
6 8 4 10 8 0
7 7 7 7 7 1

उदाहरण 2: जांचें कि क्या विशिष्ट कॉलम बराबर हैं

हम यह जांचने के लिए निम्नलिखित सिंटैक्स का उपयोग कर सकते हैं कि डेटा फ्रेम के कॉलम ए, सी और डी में मान प्रत्येक पंक्ति के लिए बराबर हैं या नहीं:

 library (dplyr)

#create new column that checks if columns 'A', 'C', and 'D' are equal
df_temp <- df %>%
             select(' A ', ' C ', ' D ') %>%
             rowwise %>%
             mutate(match = n_distinct(unlist(cur_data())) == 1 ) %>%
             A group()

#add new column to existing data frame
df$match <- df_temp$match

#view updated data frame
df

  ABCD match
1 4 4 4 4 TRUE
2 0 2 0 0 TRUE
3 3 3 3 3 TRUE
4 3 5 3 3 TRUE
5 6 6 5 3 FALSE
6 8 4 10 8 FALSE
7 7 7 7 7 TRUE

यदि कॉलम ए, सी और डी में मान बराबर हैं, तो मिलान वाला कॉलम सही लौटाता है।

अन्यथा, यह गलत लौटाता है।

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

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

आर में एकाधिक कॉलम के आधार पर कैसे क्रमबद्ध करें
आर में कुछ कॉलम कैसे सुरक्षित रखें?
आर में कॉलम में घटनाओं की संख्या की गणना कैसे करें

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

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