2

私は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ループを試してみましたが、できません。

4

3 に答える 3

8

解決策はたくさんあると思いますが、

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

それをします。

于 2013-02-11T05:25:47.183 に答える
6

いくつかのアプローチ

ゼロのベクトルを作成してから、正しいインデックスを置き換えます

x1 <- rep(0, length(x)*2)
x1[seq(2,20,by=2)] <- x

または使用Mapしてc

 unlist(Map(c,0,x))
于 2013-02-11T05:23:53.953 に答える
3

キックのためだけに:

v <- c(1,2,3,4,5,6,7,8,9,10)
c(mapply(c, 0, v))
于 2013-02-11T05:29:09.190 に答える