| 查看: 307 | 回复: 0 | |||
ruanxf04铜虫 (初入文坛)
|
[交流]
【求助】用pls工具箱来分析数据,不知道出错的原因?请专家帮我分析下!
|
|
各位专家好,下面是我用PLS处理数据的程序,但是出错了,找不出原因?请求各位帮忙解决!指点迷津! X=[0.0111 0.000 0.0014;0.0525 0.0001 0.0076;0.1787 0.0006 0.0319; 0.4401 0.0045 0.1046;0.7862 0.0251 0.2671;1.0296 0.1007 0.5311; 1.0204 0.2911 0.8228;0.8354 0.6076 0.9935;0.6683 0.9184 0.9376; 0.5853 1.0162 0.7019;0.5097 0.8604 0.4478;0.3819 0.6481 0.3166 0.2295 0.5709 0.3474;0.1082 0.6074 0.4876;0.0398 0.6059 0.6375]; Y=[0.0000;0.0000;0.1134;0.2389;0.5602;0.8881;1.1865;1.4471;1.6294;1.5744; 1.1889;0.9459;0.7914;0.9065;0.8835]; x=[0.0114 0.4849 0.7005;0.0025 0.2978 0.6342;0.0004 0.1389 0.4716; 0.0001 0.0492 0.2878;0.0000 0.0132 0.1441]; y=[0.8884;0.6532;0.3910;0.1903;0.0297]; [n,k]=size(X); m=size(Y,2); pmax=n-1; q=m; ERROR=zeros(1,pmax); PRESS=zeros(1,pmax); SECV=zeros(1,pmax); SEC=zeros(1,pmax); XX=X; YY=Y; N=size(XX,1); for p=1:pmax disp(p); Err1=zeros(1,N);%绝对误差 Err2=zeros(1,N);%相对误差 for i=1:N disp(i); if i==1 x=XX(1, :); y=YY(1,:); X=XX(2:N,:); Y=YY(2:N,:); elseif i==N x=XX(N,:); y=YY(N,:); X=XX(1:(N-1),:); Y=YY(1:(N-1),:); else x=XX(i,:); y=YY(i,:); X=[XX(1:(i-1),:);XX((i+1):N,:)]; Y=[YY(1:(i-1),:);YY((i+1):N,:)]; end [y5,e1,e2]=PLS(X,Y,x,y); Err1(i)=e1; Err2(i)=e2; end ERROR(p)=sum(Err2)/N; PRESS(p)=sum(Err1.^2); SECV(p)=sqrt(PRESS(p)/n); SEC(p)=sqrt(PRESS(p)/(n-p)); end %% [CX,SX,LX]=princomp(X); S=SX(:,1:p); MD=zeros(1,n); for j=1:n s=S(j,:); MD(j)=(s')*(inv(S'*S))*(s); end 1 1 ??? Error using ==> PLS Too many input arguments. pls使用出错了,不知道为什么?求各位专家帮帮我!不胜感激 [ Last edited by ruanxf04 on 2010-10-19 at 14:11 ] |
» 猜你喜欢
参与限项
已经有3人回复
假如你的研究生提出不合理要求
已经有7人回复
实验室接单子
已经有4人回复
全日制(定向)博士
已经有4人回复
对氯苯硼酸纯化
已经有3人回复
求助:我三月中下旬出站,青基依托单位怎么办?
已经有12人回复
不自信的我
已经有12人回复
所感
已经有4人回复
要不要辞职读博?
已经有7人回复
北核录用
已经有3人回复












回复此楼