【发布时间】:2013-02-11 05:13:32
【问题描述】:
我是 R 语言的新手。我遇到了一种情况,我需要在向量中的备用位置填充零。例如:
v<-c(1,2,3,4,5,6,7,8,9,10)
我需要像
这样的新向量0 1 0 2 0 3 0 4 0 5 0 6 0 7 0 8 0 9 0 10
我尝试使用 for 循环来填充零,但我无法做到。
【问题讨论】:
-
几个答案here
标签: r
我是 R 语言的新手。我遇到了一种情况,我需要在向量中的备用位置填充零。例如:
v<-c(1,2,3,4,5,6,7,8,9,10)
我需要像
这样的新向量0 1 0 2 0 3 0 4 0 5 0 6 0 7 0 8 0 9 0 10
我尝试使用 for 循环来填充零,但我无法做到。
【问题讨论】:
标签: r
我相信有很多解决方案,但是
as.vector(rbind(0,v))
[1] 0 1 0 2 0 3 0 4 0 5 0 6 0 7 0 8 0 9 0 10
会做的。
【讨论】:
几种方法
创建一个零向量,然后替换正确的索引
x1 <- rep(0, length(x)*2)
x1[seq(2,20,by=2)] <- x
或使用Map 和c
unlist(Map(c,0,x))
【讨论】:
18,你的16
只是为了好玩:
v <- c(1,2,3,4,5,6,7,8,9,10)
c(mapply(c, 0, v))
【讨论】: