📄 固定尺寸窗口渐进因子分析程序.txt
字号:
function fsefa
%Author: wind.
% Reference: H.R. Keller and D.L. Massart, Analytica Chimica Acta,246(1991)279
%色谱模拟
c1=gs(13,2.8,40);c2=gs(20,2.4,40);c3=gs(26,2.9,40);
C=[c1 c2 c3];
%光谱模拟
wav=30;
s1=0.2*gs(8,3.5,wav)+0.07*gs(20,3,wav);
s2=0.2*gs(13,4.3,wav)+0.05*gs(24,2.5,wav);
s3=0.20*gs(10,2.6,wav)+0.15*gs(18,2.5,wav)+0.01;
S=[s1 s2 s3];
%产生二维数据
X=C*S'+0.01*rand(40,30);
%渐进因子分析
[M,N]=size(X);width=5;EIGV=[];
for i=(width+1)/2:M-(width-1)/2
xi=X(i-2:i+2,:);
[u,s,v]=svd(xi,0);
eigv=diag(s);
eigv=eigv(1:5)';
EIGV=[EIGV;sqrt(eigv)];
end
%绘图
figure;plot(C);title('chromatography profiles');
figure;plot(S);title('spectra');
figure;surf(X);title('Two-way data');
figure;plot(EIGV);title('固定尺寸窗口渐进因子分析');
xlabel('Retention time');ylabel('Squared root of Eigenvalue');
%高斯函数
function vector=gs(a,b,n)
x=1:n;vector=exp(-(x-a).^2/(2*b^2));vector=vector';
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
%%%% 拷贝以上所有内容,在matlab下运行即可 %%%%%%%%%%%%%%%
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
--
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -