我正在使用包“pls”和“ChemometricswithR”制作PLS模型。我能够执行模型,但我遇到了问题。我做了一次性验证,如果我要求系数,我只能看到一个等式(我想所有方程式的平均值只留下一次验证)。
有没有办法看到所有的“n”方程(其中n是我矩阵中的观测数)和所有斜率系数?
这是我使用的模型:mod2< -plsr(SH_uve~matrix_uve,ncomp = 11,data = dataset_uve,validation =“LOO”,jackknife = TRUE)
答案 0 :(得分:0)
如果您提供更多信息,如何调用函数等,这将更容易回答?根据您所说的内容,我假设您分别使用包“pls”和“ChemometricswithR”中的函数crossval()
和PCA()
。我不熟悉这些函数,但是文档记载了系数“(仅限于
jackknife是TRUE)一个带有jackknifed回归系数的数组。尺寸分别对应于预测变量,响应,组件数和分段“。所以我会说确保jackknife=TRUE
并且你是在crossval()
中指定正确的细分数量。如果您使用不同的功能,则应编辑问题并添加相关信息。
答案 1 :(得分:0)
好的,我找到了解决方案。
我使用的模型是:
mod2<plsr(SH_uve~matrix_uve,ncomp=11,data=dataset_uve,validation="LOO",jackknife = TRUE)
系数矩阵位于mod2数组中。我用命令调用矩阵:
coefficients<-mod2$validation$coefficients[,,11,]
我获得了留一法交叉验证中使用的所有方程的系数矩阵。