我想使用 str_detect 而不是将 "" 转换为另一个字符串模式。有没有一种简单的方法来处理现在生成警告的空字符串模式“”。我希望这能产生 TRUE、FALSE、FALSE、FALSE、FALSE
library( tidyverse )
str_detect('matt', c( "matt","joe","liz","", NA))
Run Code Online (Sandbox Code Playgroud)
我们可以用
library(stringr)
library(tidyr)
str_detect(replace_na(v1, ''), 'matt')
#[1] TRUE FALSE FALSE FALSE FALSE
Run Code Online (Sandbox Code Playgroud)
如果匹配的不是子字符串,那么%in%会很有用
v1 %in% 'matt'
#[1] TRUE FALSE FALSE FALSE FALSE
Run Code Online (Sandbox Code Playgroud)
v1 <- c( "matt","joe","liz","", NA)
Run Code Online (Sandbox Code Playgroud)
如果你不喜欢str_detect()也许尝试一下grepl()?
grepl("matt", c( "matt","joe","liz","", NA))
#[1] TRUE FALSE FALSE FALSE FALSE
Run Code Online (Sandbox Code Playgroud)