我想用序列中的元素替换向量的NA元素,例如:
x <- c(1, NA, 5, NA, NA, 2, 12, NA)
replace.seq <- -1:-4 # Can assume length(replace.seq) == sum(is.na(x))
goal <- c(1, -1, 5, -2, -3, 2, 12, -4)
这是一种有效的方法吗?我宁愿避免排序x
。
答案 0 :(得分:2)
Per @akrun:
x[is.na(x)] <- replace.seq
答案 1 :(得分:2)
您可以使用replace
:
x <- replace(x, is.na(x), replace.seq)