2

関数から割り当てられたオブジェクトを保持しようとしています (ts 関数を構築して、単変量プロセスのモデル化を開始します。簡単です!)。ワークスペースにオブジェクトを保持する方法が見つかりません。for ループを使用するだけで問題なく動作しますが、次をパラメータ化したいと思います。

ts.builder<-function(x,y,z){
  for(i in 9:13){
    assign(paste(x,i,sep="_"),ts(yardstick[1:528,i], freq=24))
    assign(paste(y,i,sep="_"),ts(yardstick[529:552,i], freq=24))
    assign(paste(z,i,sep="_"),ts(yardstick[1:552,i], freq=24))
  }
}

ts.builder("yard.book.training","yard.book.small.valid", "yard.book.valid")

ポインタはありますか?return ステートメントが必要かもしれないと考えていますが、これがまだ役に立たないことがわかりました。

4

1 に答える 1

4

テストされていません(再現可能な例が大いに役立ちます):

ts.builder <- function() {
  xd <- list()
  yd <- list()
  zd <- list()

  for (i in 9:13) {
    xd[[i]] <- ts(yardstick[1:528,i], freq=24)
    yd[[i]] <- ts(yardstick[529:552,i], freq=24)
    zd[[i]] <- ts(yardstick[1:552,i], freq=24)
  }
  list(yard.book.training=xd, yard.book.small.valid=yd, yard.book.valid=zd)
}

l <- ts.builder()

次に、戻り値は次のとおりです。

l$yard.book.training[[9]]

于 2012-12-19T23:44:18.530 に答える