【发布时间】:2022-01-15 04:09:30
【问题描述】:
我有一个具有 NA 值的数据集。我通过传递搜索字符串使用 grepl 进行过滤,并且一直希望使用“*”来返回所有值。
df <- structure(list(`Subject description` = c("Art & Design", "Chinese",
"Classical Greek", "D&T Product Design", "Drama & Theatre Studies"
), `Discount code` = c(NA_character_, NA_character_, NA_character_,
NA_character_, NA_character_)), row.names = c(NA, -5L), class = c("tbl_df",
"tbl", "data.frame"))
search <- "*"
df %>% filter(grepl(search, `Discount code`))
以上返回一个空数据框。 grepl 有没有办法返回 NA 值。我很感激我可以用is.na(Discount code) 过滤器OR,但是我的代码正在使用搜索字符串,并且如果向string 提供另一个值,我不想返回 na 值
【问题讨论】:
-
如果内容为 NA 或匹配您的搜索模式,您希望过滤器返回值?
-
我想要两个功能,我希望“*”会返回包括 NA 在内的每一行,并且其他正则表达式值不会返回正在搜索的内容