私はRでplsr
を学んでいて、私を混乱させるいくつかの異なる例に出くわします。私は以下の2つの方法で最良の数の部品を適合させて見つける2つの方法を見てきました。私はちょうどこれらのどれが適切な方法であり、好ましいものかを知りたいですか?Rでplsr()を正しく使うには?
1)データと呼ばれるデータフレームがあり、列車データdata.train
とテストデータdata.test
に分割されています。次いでPLSRは
plsr.fit = plsr(formula, data = data.train, validation = "CV", scale = TRUE)
summary(plsr.fit)
次いで最小CV
値に基づいてncomp
値を取得するように取り付けられています。データの任意の分割なし
2)、単に次に最小CV
値に基づいてncomp
値を取得し、完全なデータ
plsr(formula, data = data, validation = "CV", scale = TRUE)
summary(plsr.fit)
にモデルをフィッティングします。
私が混乱する部分が最初の方法です。 validation = "CV"
は既に含まれており、自動的に10倍CVを適用するので、完全なデータではなくモデルがトレーニングデータに適合するのはなぜですか?この場合、トレーニングデータとテストデータに分割され、10倍のクロスバリデーションが自動的に適用されます。
'plsr'はあなたが定義した関数ですか、それともパッケージから来たものですか? – bouncyball
いいえ、 'pls'ライブラリの下にある組み込み(部分最小二乗回帰)関数です。 –