我正在使用重新编码并且其工作正常,因为它替换了所有匹配值,但我不想替换其不匹配的值,有人可以请帮助
样本数据集
x <- c(1:5, NA)
[1] 1 2 3 4 5 NA
现在使用recode
recode(x, '1' = "Hello", .default = "World")
[1] "Hello" "World" "World" "World" "World" NA
但这不是我的要求,我希望它只是改变&#39; 1&#39;但不是剩下的记录,它应该是那样的
[1] "Hello" 2 3 4 5 NA
答案 0 :(得分:0)
类型必须相同,因此它将是
recode(as.character(x), "1" = "Hello")
# [1] "Hello" "2" "3" "4" "5" NA
但你也可以使用基础R replace()
。
replace(x, x == 1, "Hello")
# [1] "Hello" "2" "3" "4" "5" NA
答案 1 :(得分:0)
我们可以使用作业
x[x==1] <- "Hello"
x
#[1] "Hello" "2" "3" "4" "5" NA