偏最小二乘代码

在这里插入图片描述

cumsum函数

A = [1 4 7; 2 5 8; 3 6 9]
B = cumsum(A)

在这里插入图片描述

A = [1 3 5; 2 4 6]
B = cumsum(A,2)

在这里插入图片描述

数据标准化

zcore标准化

2021b代码
在这里插入图片描述

zcore标准化目的是去除量纲,使得方差相等。

ab=zscore (S) ;
ab=zscore (S) ;
 a=ab(:,[1:3]); b=ab( : ,[4 :end]);

在这里插入图片描述
在这里插入图片描述

求相关系数矩

r=corrcoef (S);

在这里插入图片描述

分别提出自变量组和因变量组的成分

在这里插入图片描述

 [XL,YL,XS,YS,BETA,PCTVAR,MSE,stats ] =plsregress (a ,b);
% PCTVAR是_个两行矩阵,第一行的每个元素对应着自变量提出成分的贡献率,第二行的每个元素对
% 应着因变量提出成分的贡献率
contr=cumsum(PCTVAR,2);
xw=a\XS;
yw=b\YS;

在这里插入图片描述
x的 系数(竖的看)对比:

在这里插入图片描述
y的 系数(竖的看)对比:

在这里插入图片描述

求因变量组与子变量组之间的回归方程。

[XL2,YL2,XS2,YS2,BETA2,PCTVAR2,MSE2,stats2] =plsregress (a,b,ncomp)

在这里插入图片描述
BETA2为标准化前的系数(竖着看):
在这里插入图片描述

beta3(1, : ) =mu (n+1:end)-mu (1 :n)./sig (1:n)* BETA2([2:end] , : ).* sig (n+1:end);
beta3([2:n+1],:)=(1./ sig(1:n) )' * sig (n+1:end).* BETA2([2:end], :)

在这里插入图片描述
系数(竖着看)

反标准化

在这里插入图片描述

bar函数

绘制反zcore化前的图像
在这里插入图片描述

bar(xBETA2);
legend({'图例1', '图例2','图例2'})
labels = {'单杠', '弯曲', '酬工'};
xticklabels(labels)

求预测值

20个样本,三个特征
在这里插入图片描述

yhat =repmat (beta3 (1,:),[size(a,1),1] )+ab0(:,[1:n] ) * beta3( [2:end], :)

求预测值和观测值的最大值(画图用)

ymax =max([yhat ;ab0( : , [n+1:end])]);%求预测值和观测值的最大值

画图分析

在这里插入图片描述

在这个预测图上,如果
所有点都能在图的对角线附近均匀分布’则方程的拟合值与原值差异很小,这个方程的拟
合效果就是令人满意的。

在这里插入图片描述

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值