【问题标题】:Merge two vectors by non NA values [duplicate]通过非NA值合并两个向量[重复]
【发布时间】:2012-11-28 11:45:46
【问题描述】:

可能重复:
Combining two vectors element-by-element

我有两个向量

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

如何获得将非 NA 组合如下的输出?

[1] 1 2  1 NA

谢谢

【问题讨论】:

    标签: r vector na


    【解决方案1】:
    pmin(d, c, na.rm = TRUE)
    

    会成功的。

    [1]  1  2  1 NA
    

    【讨论】:

      【解决方案2】:

      你问的有点含糊。例如,如果两个元素都不是 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 的值)。
      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2019-05-21
      • 2022-01-13
      • 2011-08-30
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多