通过非NA值合并两个向量

12

可能是重复问题:
按元素逐个组合两个向量

我有两个向量。

d = c(1, 2, NA, NA)
c = c(NA, NA, 1, NA)

我该如何获得一个将非缺失值组合为以下形式的输出?

[1] 1 2  1 NA

谢谢

2个回答

15
pmin(d, c, na.rm = TRUE)

会有作用的。

[1]  1  2  1 NA

11
您所询问的内容有些模糊。例如,如果两个元素都不是NA,会发生什么?
无论如何,这里有一种方法可以得到期望的结果:
##Don't name things c - it's confusing.
d1 = c(1,2,NA,NA)
d2 = c(NA,NA,1,NA)

d1[is.na(d1)] = d2[is.na(d1)]

这将会给出:

R> d1
[1]  1  2  1 NA

谢谢,这是一个简单而好的解决方案。(我没有两个元素都不是NA的值。) - jamborta

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接