替换字符串中除一个以外的所有单词的问题

时间:2018-07-19 10:38:54

标签: r regex replace

我有一个简单的问题:

我有一列包含数千个值,并且试图将其转换为二分变量(是|否)。用“否”替换字符串很容易,因为我转换的值只是一个星号

Data$Complete <- gsub("\\*", "No", Data$Complete)

但是,当我尝试替换除“否”之外的所有内容时,以下代码将我的字符串中的所有内容替换为“是”。我不明白为什么要指定替换“否”之外的所有内容:

Data$Complete <- Data[!Data$Complete %in% c("No"), "Complete"] <- "Yes" 

任何指针将不胜感激。

1 个答案:

答案 0 :(得分:0)

您可以使用let webrtc = new WebRtcPeer.WebRtcPeerSendrect(options, fn) 函数和ifelse的组合来提取必要的数据,如下所示:

grepl

输出:

library(stringi)

# data simulation
set.seed(123)
n <- 1000
data <- data.frame(
  complete = stri_rand_strings(n = n, length = 20, pattern = "[A-Za-z0-9\\*]")
)

# string matching
data$yes_no <- ifelse(grepl("\\*", data$complete), "No", "Yes")
head(data)