我想使用plsr
函数使用PLSR的加载(权重)计算一组变量的组件。
我认为通过将每个变量的值乘以估计的负载(重量)来计算组件。
但是,使用plsr
的输出并执行此操作并未给出预期值:
示例:
library("pls")
data(oliveoil)
sens.pcr <- plsr(sensory ~ chemical, ncomp = 4, scale = F, data = oliveoil)
提取载荷/重量:
df <- cbind(sens.pcr$loadings[,1],sens.pcr$loadings[,2],sens.pcr$loadings[,3],sens.pcr$loadings[,4])
一项测试观察:
firstrow <- oliveoil$chemical[1,]
提取组件(分数):
scores <- sens.pcr$scores
做线性组合:
sum(firstrow*df[,1])
[1] -12.81924
这不等于第一个得分scores[1,1]
= 0.5100166
我错过了什么?
使用sense.pcr$loadings.weigths
也没有任何重大影响。