gpt4 book ai didi

r - 逐个元素组合两个向量

转载 作者:行者123 更新时间:2023-12-04 05:19:31 27 4
gpt4 key购买 nike

我有2个向量,例如:

A <- c(1,2,NA,NA,NA,NA,7)
B <- c(NA,NA,3,4,NA,NA,7)

我想将它们组合起来,以便得到的矢量是
1,2,3,4,NA,NA,-1

那是
  • 当位置i的任一向量中只有1个值(例如X)存在(另一个为NA)时,新向量应在位置i取值X。
  • 当两个值在位置i处均为NA时,新矢量应在位置i处采用值NA
  • 当两个向量在位置i处都有值时,新向量在位置i处应值为-1。

  • 我可以轻松地通过循环执行此操作,但是在大型数据集上它非常慢,因此任何人都可以提供一种快速的方法来执行此操作吗?

    最佳答案

    这些命令创建向量:

    X <- A
    X[is.na(A)] <- B[is.na(A)]
    X[is.na(B)] <- A[is.na(B)]
    X[!is.na(A & B)] <- -1

    #[1] 1 2 3 4 NA NA -1

    关于r - 逐个元素组合两个向量,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/12511476/

    27 4 0
    Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
    广告合作:1813099741@qq.com 6ren.com