मेरे पास निम्न डेटा सेट है

   A       B         C 
   1      red        No
   2      green      Yes
   1      red        No
   3      red        No
   2      green      No
   1      red        Yes
   4      red        Yes
   2      green      No
   5      green      No

इसलिए, मैं कॉलम ए और बी के आधार पर डुप्लिकेट पंक्तियों को हटाना चाहता हूं लेकिन कॉलम सी पर "हां" मान रखने वाले लोगों को रखते हुए वांछित परिणाम होगा:

   A       B         C 
   1      red        Yes
   2      green      Yes
   3      red        No
   4      red        Yes
   5      green       No

मैं dplyr में उत्तर ढूंढ रहा हूं। सभी को धन्यवाद!

0
Alex 17 सितंबर 2020, 21:16

1 उत्तर

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

तुम यह कर सकते थे:

df %>% 
  group_by(A, B) %>% 
  mutate(C = rev(sort(C))) %>% 
  summarise(C = C[1], .groups = "keep")

#> # A tibble: 5 x 3
#> # Groups:   A, B [5]
#>       A B     C    
#>   <int> <chr> <chr>
#> 1     1 red   Yes  
#> 2     2 green Yes  
#> 3     3 red   No   
#> 4     4 red   Yes  
#> 5     5 green No   
0
Allan Cameron 17 सितंबर 2020, 22:53