• 大小: 2KB
    文件类型: .m
    金币: 1
    下载: 0 次
    发布日期: 2021-01-11
  • 语言: Matlab
  • 标签: PLS  

资源简介

PLS片最小二乘matlab程序,用于对数据的特征提取。

资源截图

代码片段和文件信息

function [TPUQBW]=pls(XYtol2)
x=[4 9 6 7 7 8 3 2;6 15 10 15 17 22 9 4;8 21 14 23 27 36 15 6;
10 21 14 13 11 10 3 4; 12 27 18 21 21 24 9 6; 14 33 22 29 31 38 15 8;
16 33 22 19 15 12 3 6; 18 39 26 27 25 26 9 8;20 45 30 35 35 40 15 10];
y=[1 1;3 1;5 1;1 3;3 3;5 3;1 5;3 5;5 5];

N=size(x1);    % N=9
x1=x(1:N-1:);
y1=y(1:N-1:);
x2=x(N:);
y2=y(N:);

xmean=mean(x1);
xstd=std(x1);
ymean=mean(y1);
ystd=std(y);
X=(x1-xmean(ones(N-11):))./xstd(ones(N-11):);
Y=(y1-ymean(ones(N-11):))./ystd(ones(N-11):);

[TPUQBW]=pls(XY);

yp = (x2-xmean)./xstd * (P*B*Q‘);
fprintf(‘Prediction error: %g\n‘norm(yp-(y2-ymean)./ystd));

error(nargchk(13nargin));
error(nargoutchk(06nargout));
if nargin<2
    Y=X;
end
tol = 1e-10;
if nargin<3
    tol2=1e-10;
end

评论

共有 条评论