मैं आर डेटा फ्रेम में एक नया कॉलम बनाना चाहता हूं। मैं इस कॉलम मानों को अन्य कॉलम से इस उदाहरण के रूप में रखना चाहता हूं:

ID  column1 column2 
1    C       C
2    B       C
3    A       A
4    C       B

नए कॉलम में 2 कॉलम में कोई C उपलब्ध होना चाहिए और उसका मान इस तरह मौजूद होना चाहिए:

ID  column1 column2  new column
1    C       C        Present
2    B       C        Present 
3    A       A        Absent
4    C       B        Present

क्योंकि मैं केवल कॉलम से सी चाहता हूं क्या आप कृपया मेरी मदद कर सकते हैं?

r
2
Marwah Al-kaabi 8 अगस्त 2021, 18:30

2 जवाब

सबसे बढ़िया उत्तर

हम ifelse का उपयोग | ऑपरेटर के साथ कर सकते हैं:

library(dplyr)
df %>% 
    mutate(`new column`= ifelse(column1 == "C" | column2 == "C", "Present", "Absent"))

आउटपुट:

  ID column1 column2 new column
1  1       C       C    Present
2  2       B       C    Present
3  3       A       A     Absent
4  4       C       B    Present
2
TarJae 8 अगस्त 2021, 18:39

इसका उपयोग आधार R में भी किया जा सकता है:

DF$new_column <- Map(function(x, y) c("Absent", "Present")[any("C" %in% c(x, y)) + 1], 
                     DF$column1, DF$column2)
DF

  ID column1 column2 new_column
1  1       C       C    Present
2  2       B       C    Present
3  3       A       A     Absent
4  4       C       B    Present
2
Anoushiravan R 8 अगस्त 2021, 18:42