我有一个包含Android,Linux,Windows,iOS等值的变量。
我希望保持与Android,Windows和iOS相等的值,但其他值应更改为"其他"。
我觉得这很容易,我试着用gsub()来做这件事,但我没有找到解决方案。
答案 0 :(得分:1)
我们可以使用grepl
v1[!grepl("\\b(Android|Linux|Windows|iOS)\\b", v1) & !is.na(v1)] <- "Others"
如果不是部分匹配,我们也可以使用%in%
v2[!v2 %in% c("Android", "Linux", "Windows", "iOS") & !is.na(v2)] <- "Others"
v1 <- c("Android phone", "Linux OS", "Windows OS", "A", "iOS", "B", NA)
v2 <- c("Android", "Linux", "Windows", "A", "iOS", "B", NA)