偏最小二乘法(R语言)

偏最小二乘法(R语言)偏最小二乘一般针对于下面两个问题:1)自变量的数目较多,但是观测的样本并不是很多;2)回归方程建立后主要用于预测。代码实现如下:data8.2<-read.csv("C:/Users/Administrator/Desktop/data8.2.csv",head=TRUE)datas<-data.frame(scale(data8.2))library(pls)pls1&lt…

大家好,欢迎来到IT知识分享网。

偏最小二乘一般针对于下面两个问题:1)自变量的数目较多,但是观测的样本并不是很多;2)回归方程建立后主要用于预测。

代码实现如下:

data8.2<-read.csv("C:/Users/Administrator/Desktop/data8.2.csv",head=TRUE)
datas<-data.frame(scale(data8.2))
library(pls)
pls1<-plsr(y~.,data=datas,validation="LOO",jackknife=TRUE,method="widekernelpls")
summary(pls1,what="all")

其中validation=”LOO”表示使用留一交叉验证设计算法RMSEP;jackknife=TRUE表示使用jackknife方法估计回归系数方差(为后面的显著性实验做准备)。

输出结果为:
在这里插入图片描述
  上述为使用了所有主成分进行回归得到的结果,从回归结果中可以看到,主成分个数为3个时,模型在经留一交叉验证法后的得到的RMSEP总和较小,且随着成分个数的增加,RMSEP值出现明显减少,同时3个主成分对各变量的累积贡献率均高于99%,因此将回归的主成分个数设定为 m = 3 m=3 m=3
  
下面给出主成分为3时的回归方程实现代码:

pls1<-plsr(y~.,data=datas,ncomp=3,validation="LOO",jackknife=TRUE)
coef(pls1)

输出结果为:
在这里插入图片描述
  由以上结果就可以得到标准化后的数据 y ∗ y^{*} y对所有自变量的回归方程。将回归方程中的变量还原为原始数变量便得到最终的回归方程。

免责声明:本站所有文章内容,图片,视频等均是来源于用户投稿和互联网及文摘转载整编而成,不代表本站观点,不承担相关法律责任。其著作权各归其原作者或其出版社所有。如发现本站有涉嫌抄袭侵权/违法违规的内容,侵犯到您的权益,请在线联系站长,一经查实,本站将立刻删除。 本文来自网络,若有侵权,请联系删除,如若转载,请注明出处:https://yundeesoft.com/23389.html

(0)

相关推荐

发表回复

您的电子邮箱地址不会被公开。 必填项已用 * 标注

关注微信