【发布时间】:2013-07-14 14:58:01
【问题描述】:
我在 R 中有 2 个不同的向量。第一个中的条目只有 0 或 1。第二个向量的长度等于第一个向量中 1 的数量。我想要一个输出,它是第一个向量,但 1 被第三个向量的条目替换。例如
v1<-c(1,0,0,1,1)
v2<-c(2,3,4)
我想要:
v3<-c(2,0,0,3,4)
我的脚本中 v1 的长度为 10,我有超过 1000 个要计算,因此无法手动完成。任何想法都会很棒,谢谢!
强尼
【问题讨论】:
-
我认为不需要乘法,因为 v1 是二进制的。
v1[v1 != 0] <- v2。或者更好的@AnandaMahto 评论v1[v1 == 1] <- v2 -
效果很好,谢谢!
-
但是如果第二个向量的长度不等于 1 的数量,
Recycling就可以工作。
标签: r vector cran vector-multiplication