资源简介
偏最小二乘的源代码。偏最小二乘的源代码。偏最小二乘的源代码。
代码片段和文件信息
clcclear
pz=load(‘usaco2.txt‘); %原始数据存放在纯文本文件 pz.txt 中
mu=mean(pz);sig=std(pz); %求均值和标准差
rr=corrcoef(pz); %求相关系数矩阵
data=zscore(pz); %数据标准化变量记做 X*和 Y*
n=2;m=1; %n 是自变量的个数m 是因变量的个数
x0=pz(:1:n);y0=pz(:n+1:end); %原始的自变量和因变量数据
e0=data(:1:n);f0=data(:n+1:end); %标准化后的自变量和因变量数据
num=size(e01);%求样本点的个数
chg=eye(n); %w 到 w*变换矩阵的初始化
for i=1:n
%以下计算 w,w*和 t 的得分向量,
matrix=e0‘*f0*f0‘*e0;
[vecval]=eig(matrix); %求特征值和特征向量
val=diag(val); %提出对角线元素,即提出特征值
[valind]=sort(val‘descend‘);
w(:i)=vec(:ind(1)); %提出大特征值对应的特征向量
w_star(:i)=chg*w(:i); %计算 w*的取值
t(:i)=e0*w(:i); %计算成分 ti 的得分
alpha=e0‘*t(:i)/(t(:i)‘*t(:i)); %计算 alpha_i
chg=chg*(eye(n)-w(:i)*alpha‘); %计算 w 到 w*的变换矩阵
e=e0-t(:i)*alpha‘; %计算残差矩阵
e0=e;
%以下计算 ss(i)的值
beta=t\f0; %求回归方程的系数,数据标准化,没有常数项
cancha=f0-t*beta; %求残差矩阵
ss(i)=sum(sum(cancha.^2)); %求误差平方和
%以下计算 press(i)
for j=1:num
t1=t(:1:i);
f1=f0;
she_t=t1(j:);
she_f=f1(j:); %把舍去的第 j 个样本点保存起来
t1(j:)=[];
f1(j:)=[]; %删除第 j 个观测值
beta1=[t1ones(num-11)]\f1; %求回归分析的系数这里带有常数项
cancha=she_f-she_t*beta1(1:end-1:)-beta1(end:); %求残差向量
press_i(j)=sum(cancha.^2); %求误差平方和
end
press(i)=sum(press_i); Q_h2(1)=1;
if i>1 Q_h2(i)=1-press(i)/ss(i-1);
end
if Q_h2(i)<0.0975
fprintf(‘提出的成分个数 r=%d‘i); break
end
end
beta_z=t\f0; %求 Y*关于 t 的回归系数
xishu=w_star*beta_z; %求 Y*关于 X*的回归系数,每一列是一个回归方程
mu_x=mu(1:n);mu_y=mu(n+1:end); %提出自变量和因变量的均值
sig_x=sig(1:n);sig_y=sig(n+1:end); %提出自变量和因变量的标准差
ch0=mu_y-(mu_x./sig_x*xishu).*sig_y; %计算原始数据回归方程的常数项
for i=1:m
xish(:i)=xishu(:i)./sig_x‘*sig_y(i); %计算原始数据回归方程的系数
end
sol=[ch0;xish]
y1=sol(1)+sol(2)*pz(:1)+sol(3)*pz(:2)
R=pz(:3);
t2=[ones(381)pz(:1)pz(:2)];
[bbintrrintstats]=regress(Rt20.05);
y2=b(1)+b(2)*pz(:1)+b(3)*pz(:2)
属性 大小 日期 时间 名称
----------- --------- ---------- ----- ----
文件 2362 2017-08-23 20:34 偏最小二乘法\pzxec.m
文件 785 2017-08-23 18:07 偏最小二乘法\usaco2.txt
目录 0 2017-08-23 23:15 偏最小二乘法
----------- --------- ---------- ----- ----
3147 3
相关资源
- Pattern Recognition and Machine Learning(高清
- MATLAB 编程 第二版 Stephen J. Chapman 著
- 均值滤波和FFT频谱分析Matlab代码
- 《MATLAB扩展编程》代码
- HDB3码、AMI码的MATLAB实现
- 3点GPS定位MATLAB仿真
- MATLAB数字信号处理85个实用案例精讲入
- matlab从入门到精通pdf94795
- 欧拉放大论文及matlab代码
- 跳一跳辅助_matlab版本
- 全面详解LTE MATLAB建模、仿真与实现
- MIMO-OFDM无线通信技术及MATLAB实现_孙锴
- MATLAB Programming for Engineers 4th - Chapman
- matlab 各种谱分析对比
- 分数阶chen混沌matlab程序
- 基于粒子群算法的非合作博弈的matl
- MATLAB车流仿真 包括跟驰、延误
- matlab空间桁架计算程序
- 基于MATLAB的图像特征点匹配和筛选
- DMA-TVP-FAVAR
- GPS信号的码捕获matlab代码.7z
- 一维光子晶体MATLAB仿真代码吸收率折
- newmark法源程序
- 传统关联成像、计算鬼成像matlab
- pri传统分选算法
- 摆动滚子推杆盘形凸轮设计
- 医学图像重建作业matlab源码
- Matlab实现混沌系统的控制
- 检测疲劳驾驶
- Matlab锁相环仿真-Phase Locked Loop.rar
评论
共有 条评论