我很新的R(和编程一般),我一直停留在几天这个(可能很容易的)问题...
如何将一个使载体3 6 12 24 48 96 192 384 768
有一个for
循环?
所有我已经设法想出到目前为止是沿着线的东西:
x=numeric()
for (i in 1:8) (x=2*i[-1])
然而,这是行不通的。 我认为主要问题之一是,我不知道如何进行索引的顺序号。
如果任何人都可以在正确的方向指向我,将是这样一个很大的帮助!
我很新的R(和编程一般),我一直停留在几天这个(可能很容易的)问题...
如何将一个使载体3 6 12 24 48 96 192 384 768
有一个for
循环?
所有我已经设法想出到目前为止是沿着线的东西:
x=numeric()
for (i in 1:8) (x=2*i[-1])
然而,这是行不通的。 我认为主要问题之一是,我不知道如何进行索引的顺序号。
如果任何人都可以在正确的方向指向我,将是这样一个很大的帮助!
好吧,你需要知道的第一件事是如何追加东西的向量。 轻松足够你想要的功能是append
:
x <- c(1, 2)
x <- append(x, 3)
将使得向量x包含(1, 2, 3)
就像你做了x <- (1, 2, 3)
你需要认识到接下来的事情是,你的目标向量的每个成员都是双倍的人之前,这很容易在一个for循环做
n <- 1
for (i in 1:8)
{
n <- n*2
}
将具有N每次循环翻倍。 很明显,你可以通过之前或之后将你的其他语句中使用它在它的一倍,或还未一倍形式n <- n*2
声明。
希望你可以把这两件事一起做你想要的循环。
x=c()
x[1] = 3
for (i in 2:9) {
x[i]=2*x[i-1]
}
真的,伙计。 在阿伦的评论溶液隐藏棒。
Rgames> 3*2^(0:20)
[1] 3 6 12 24 48 96 192 384 768
[10] 1536 3072 6144 12288 24576 49152 98304 196608 393216
[19] 786432 1572864 3145728