0

I am trying to extract data for each ID with the words "enrolled","probable" and "confirmed" in the comment column

ID <- c("1","1","1","1","1","2","2","2","2","3","3","4","4")

Comments <-c("employee enrolled"," report generated","employee performed","promotion probable","employee confirmed","employee enrolled"
            ," writen test completed","employee confirmed ","employee started","employee enrolled "
            ,"probable employee"," employee enrolled","employee started ")
            
Date<-c("2020-07-14","2020-07-15","2020-07-15","2020-07-16","2020-07-30","2020-07-01","2020-07-02",
"2020-07-03","2020-07-04","2020-07-30","2020-07-31","2020-07-23","2020-07-23")            
            
df<- data.frame(ID,Comments,Date)  

I am trying to extract data for each ID with the words "enrolled","probable" and "confirmed" in the comment column

expected output:

ID               Comments       Date
1           employee enrolled    2020-07-14
1           promotion probable   2020-07-16
1           employee confirmed   2020-07-30
2           employee enrolled    2020-07-01
2           employee confirmed   2020-07-03
3            employee enrolled   2020-07-30
3           probable employee    2020-07-31
4            employee enrolled   2020-07-23
stefan
  • 90,330
  • 6
  • 25
  • 51
priya
  • 105
  • 9

1 Answers1

1

We could use str_detect

library(dplyr)
library(stringr)
df %>%
   filter(str_detect(Comments, 'enrolled|probable|confirmed'))

-output

# ID            Comments       Date
#1  1   employee enrolled 2020-07-14
#2  1  promotion probable 2020-07-16
#3  1  employee confirmed 2020-07-30
#4  2   employee enrolled 2020-07-01
#5  2 employee confirmed  2020-07-03
#6  3  employee enrolled  2020-07-30
#7  3   probable employee 2020-07-31
#8  4   employee enrolled 2020-07-23

Or with grepl from base R

subset(df, grepl('enrolled|probable|confirmed', Comments))
akrun
  • 874,273
  • 37
  • 540
  • 662