【发布时间】:2017-07-13 21:00:23
【问题描述】:
我有一个数据框(实际上是一个小标题)df,有两列,a 和 b,我想过滤掉 a 是 b 的子字符串的行.我试过了
df %>%
dplyr::filter(grepl(a,b))
但我收到一条警告,似乎表明 R 实际上正在应用 grepl,第一个参数是 whole 列 a。
有什么方法可以将涉及两个不同列的正则表达式应用于 tibble(或数据框)中的每一行?
【问题讨论】:
-
如果您向reproducible example 提供可用于测试的示例输入,则更容易为您提供帮助。但是
grepl没有在模式上进行矢量化。也许使用一些map/Map/mapply函数来帮助解决这个问题。 -
I get a warning that seems to indicate that R is actually applying grepl with the first argument being the whole column实际上在这种情况下只使用了第一个元素,而不是整个列。