I'm utilizing the function str_detect
from tidyverse to filter out rows of a data frame that match the start of any string from a list. Currently, utilizing |
statement when filtering between each column within my filter
statement. Is there any way to utilize str_detect
across multiple columns without using or statements? The code I'm currently using below works, but does not scale.
Dataframe <- data.frame("names" = c('John','Jill','Joe','Mark'), "Jobs" = c('Mailman','Jockey','Jobhunter',"Nojob"))
Filter_list <- c('Jo')
Dataframe %>% filter(str_detect(names, paste0("^(", paste(Filter_list, collapse = "|"), ")")) |
str_detect(Jobs, paste0("^(", paste(Filter_list, collapse = "|"), ")"))
names Jobs
1 John Mailman
2 Jill Jockey
3 Joe Jobhunter)
See Question&Answers more detail:
os 与恶龙缠斗过久,自身亦成为恶龙;凝视深渊过久,深渊将回以凝视…