偏最小二乘回归分析实例plsregress命令

偏最小二乘回归分析实例

原文:http://blog.csdn.net/qq_34861102/article/details/77102683


plsregress命令

  • 步骤
    • 数据标准化
    • 求相关系数矩阵
    • 分别提出自变量组合因变量组的成分
    • 求两个成分对标准化指标变量和成分变量之间的回归方程
    • 求因变量组与自变量组之间的回归方程
    • 模型的解释与检验
  • 实例代码

    • ab0 = load('data.txt');
      %均值和方差
      mu = mean(ab0);
      sig = std(ab0);
      %标准化以后的自变量和因变量数据
      a = ab(:,[1:end-1]);
      b = ab(:,end);
      [XL YL XS YS BETA PCTVAR MSE status] = plsregress(a,b);
      %求自变量的主成分系数
      xw = a\XS;
      %求因变量的主成分系数
      yw = b\YS;
      ncomp = input('请根据PCTVAR的值确定提出成分对的个数');
      
      [XL2 YL2 XS2 YS2 BETA2 PCTVAR2 MSE2 status2] = plsregress(a,b,ncomp);
      %自变量的个数
      n = size(a,2);
      %原始数据回归方程的常数项
      beta3(1) = mu(end) - mu(1:n)./sig(1:n)*BETA2([2:end]).*sig(end);
      beta3([2:n+1]) = (1./sig(1:n))'*sig(n+1:end).*BETA2([2:end]);
      %直方图
      bar(BETA2','k');
      %y的预测值
      yhat = repmat(beta3(1),[size(a,1),1]) + ab0(:,[1:n])*beta3([2:end])';
      %预测值的最大值
      ymax = max([yhat;ab0(:,end)]);
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值