私はRに比較的慣れておらず、現在plsパッケージを使用してPLSモデルを構築中です。同じサイズの 2 つの独立したデータセットがあります。最初のデータセットは、モデルのキャリブレーションに使用されます。データセットは、28 の観測値に対する複数の応答変数 (y) と 101 の説明変数 (x) で構成されます。ただし、応答変数はそれぞれ個別に PLS モデルに含まれます。現在のコードは次のようになります。
# load data
data <- read.table("....txt", header=TRUE)
data <- as.data.frame(data)
# define response variables (y)
HEIGHT <- as.numeric(unlist(data[2]))
FBM <- as.numeric(unlist(data[3]))
N <- as.numeric(unlist(data[4]))
C <- as.numeric(unlist(data[5]))
CHL <- as.numeric(unlist(data[6]))
# generate matrix containing the explanatory (x) variables only
spectra <-(data[8:ncol(data)])
# calibrate PLS model using LOO and 20 components
library(pls)
refl.pls <- plsr(N ~ as.matrix(spectra), ncomp=20, validation = "LOO", jackknife = TRUE)
# visualize RMSEP -vs- number of components
plot(RMSEP(refl.pls), legendpos = "topright")
# calculate explained variance for x & y variables
summary(refl.pls)
現在、応答変数ごとに、PLS モデルに含めるコンポーネントの最適な数を決定する必要があるポイントに到達しました。RMSEP 値は、すでに適切な指標を提供しています。ただし、私が実施している調査に匹敵するさまざまな調査に従って、PRESS (Predicted Residual Sum of Squares) 統計にも基づいて決定したいと思います。つまり、 n 個のコンポーネントを持つ各 PLS モデルの PRESS 統計を抽出したいと思います。
pls パッケージのドキュメントや Web を閲覧しましたが、残念ながら答えが見つかりませんでした。私が正しい方向に進むのを助けることができる人がここにいるなら、それは大歓迎です!