2

データ セット全体に対して非線形最小二乗回帰を実行し、そのデータ セットのいくつかのサブセットに対して回帰を繰り返す必要があります。単一のサブセットに対してこれを行うことができます。例 (ここで、y は一般的なロジスティック方程式であり、x は 1 から 20 までのベクトルです):

example = nls(x ~ y, subset = c(2:20))

しかし、これを 3:20、4:20、5:20 などで実行したいので、for ループを試しました。

datasubsets <- sapply(2:19, seq, to = 20)
for (i in 1:19){
    example[i] = nls(x ~ y, subset = datasubsets[i])
}

しかし、「xj [i]のエラー:無効な添字タイプ 'リスト'」が表示されます。nls() を 20 回コピーして貼り付ける必要はありません。どんな助けでも大歓迎です。

4

1 に答える 1

2

これは仕事をします: sapply(2:19,function(jj) nls(x~y,subset=jj:20)).

于 2012-09-11T23:16:23.750 に答える