r - 用其他向量填充向量
问题描述
我想做的是创建一个向量并用其他向量的值填充它。即:我有:
a <- c(NA, 1, NA, 2, NA)
b <- c(1, NA, 4, NA, 5)
我想以类似的方式结束:
c <- c(1,1,4,2,5)
每次我运行代码时,这些值可能会发生变化,并且前两个向量的长度可能会发生变化,但第三个向量始终相同。
解决方案
我们可以用coalesce
library(dplyr)
c1 <- coalesce(a, b)
或者只要两个对应的元素都是非NA就可以base R
使用pmin/pmax
pmin(a, b, na.rm = TRUE)
[1] 1 1 4 2 5