R言語におけるループでの複数のオブジェクトの処理


非常に初歩的な質問で恐縮なのですが、ループを用いて複数のオブジェクトに処理を施す方法に関して質問があります。

[code]

    x1, x2, x3, ... ,xn
    
[/code]

というxtsオブジェクトがあるとき、

[code]

    vx1, vx2, ..., vxn
    
[/code]

という複数のベクトルをつくろうとして

[code]

    i <- 1
    for (i in 1:n)
    {
     vx[i] <- as.vector(x[i])
     i <- i+1
    }
    
[/code]

としてみました。がうまくいきませんでした。 コードに誤りや勘違いがありましたらご指摘お願いします。




質問を字面通りに受け取ると、

`x1`と`vx1`が存在していて、これは配列やリストではないということなのでしょうから、 そのままでは添字でアクセスできません。

なので一旦listなどにしてあげる必要があるんじゃないでしょうか。例えば、こんな感じですかね。

[code]

    require("xts")
    data(sample_matrix)
    x1 <- as.xts(sample_matrix)
    # is.xts(x1)
    x2 <- as.xts(sample_matrix)
    x3 <- as.xts(sample_matrix)
    
    n <- 3
    xlst <- list(x1, x2, x3)
    
    vx <- array(1:n)
    for( i in 1:n){
       vx[i] <- as.vector(xlst[i])
    }
    
[/code]

