仅过滤数据帧的行,这些行部分匹配一组字符串中的一个

时间:2017-12-06 10:55:31

标签: r dataframe filter grep dplyr

考虑以下数据框:

tag <- factor(c("01 sads", "sasa 02 ad", "02 sdakhads", "saa 01 dsAA", "03 AASlj"))
x <- rnorm(length(tag))
df <- data.frame(x = x, tag = tag)

我想只过滤tag包含字符串"01"或字符串"03"的行(注意tag是因子)。现在,我一直在使用

filtered_df <- df[grep("(01|03)", df$tag), ]

它工作正常,它可以扩展到我需要它的更大的数据帧。但是,我想知道是否存在使用dplyr的{​​{1}}的等效解决方案,或者这是否是基本R解决方案更简单的情况之一。你能救我吗?

0 个答案:

没有答案