【发布时间】:2016-01-13 12:10:45
【问题描述】:
我有以下数据框:
address <- c("Weg", "Laan", "Molenweg")
b <- seq(1:3)
df <- data.frame(address, b)
我现在想做的是查看地址是否包含某个单词,然后标记一列。像这样:
df_weg <- df$address
x <- c("weg")
df$test <- ifelse(grepl(x, df_weg), 1, 0)
这很好用,但是当单词在列表中时,我正在寻找一种将项目标记为 0/1 的方法。所以它应该像这样工作:
x <- c("weg", "laan")
df$test <- ifelse(grepl(x, df_weg), 1, 0)
但是当我尝试这个时,我得到了以下错误:
Warning message:
In grepl(x, df_weg) :
argument 'pattern' has length > 1 and only the first element will be used
关于如何让这个工作的任何想法?
【问题讨论】:
标签: r