亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频

? 歡迎來(lái)到蟲(chóng)蟲(chóng)下載站! | ?? 資源下載 ?? 資源專輯 ?? 關(guān)于我們
? 蟲(chóng)蟲(chóng)下載站

?? ncrossreg.m

?? 強(qiáng)大的多維工具箱.應(yīng)用在Matlab中,可分析多緯數(shù)據(jù)結(jié)構(gòu).直接安裝.
?? M
字號(hào):
function [XValResult,Model]=ncrossreg(X,y,MaxFac,Centering,SegmentsID);
%NCROSSREG cross-validation of regression model
%
% See also:
% 'ncrossdecomp'
% 
% CROSS-VALIDATION OF BI- & MULTILINEAR REGRESSION MODELS
% Performs cross-validation of 
% - NPLS  Input multi-way array X
% - PLS   Input two-way X
% 
% The data are by default centered across the first mode, but no scaling
% is applied (this must be done beforehand)
% 
% I/O
% [XValResult,Model]=ncrossreg(X,y,MaxFac,Centering);
%
% INPUT
% X         : X array 
% y         : y array 
% MaxFac    : Maximal number of factors (from one to MaxFac factors will be investigated)
%
% OPTIONAL INPUT
% Centering : If not zero, centering is performed on every segment
% SegmentsID: Optional binary matrix. Rows as rows in X and i'th column defines i'th segment
%             Rows in i'th column set to one are left out at 
%
% OUTPUT
% XValResult
%  Structured array with the following elements
%  ypred    : Cross-validated predictions
%  ssX_Xval : Cross-validated sum of squares of residuals in X (f'th element for f-component model)
%  ssX_Fit  : Fitted sum of squares of residuals in X (f'th element for f-component model)
%  ssY_Xval : Cross-validated sum of squares of residuals in Y (f'th element for f-component model)
%  ssY_Fit  : Fitted sum of squares of residuals in Y (f'th element for f-component model)
%  Percent  : Structured array holding Xexp and Yexp, each with fitted and X-validated % Variance captured.
%  PRESS    : Predicted REsidual Sum of Squares in Y
%  RMSEP    : Root Mean Square Error of Prediction (cross-validation)
%
% Model
%  Structured array holding the NPLS model



% $ Version 1.0301 $ Date 26. June 1999  
% $ Version 1.0302 $ Date 1. January 2000
% $ Version 2.00 $ May 2001 $ Changed to array notation $ RB $ Not compiled $
% $ Version 2.01 $ jan 2003 $ Added option for skipping centering and added percentages in output $ RB $ Not compiled $
% $ Version 2.02 $ Sep 2003 $ Fixed bug in non-center option $ RB $ Not compiled $

%
% Copyright, 1997 - 
% This M-file and the code in it belongs to the holder of the copyrights and is made public under the following constraints:
% It must not be changed or modified and code cannot be added. The file must be regarded as read-only. Furthermore, the
% code can not be made part of anything but the 'N-way Toolbox'. In case of doubt, contact the holder of the copyrights.
% 
% Rasmus Bro
% Chemometrics Group, Food Technology
% Department of Food and Dairy Science
% Royal Veterinary and Agricultutal University
% Rolighedsvej 30, DK-1958 Frederiksberg, Denmark
% Phone  +45 35283296
% Fax    +45 35283245  
% E-mail rb@kvl.dk

I = size(X,1);

DimX = size(X);
DimY = size(y);
X = reshape(X,DimX(1),prod(DimX(2:end)));
y = reshape(y,DimY(1),prod(DimY(2:end)));

Ypred     = zeros([MaxFac DimY]);
Ex        = zeros([MaxFac DimX]);
Ey        = zeros([MaxFac DimY]);

if nargin<4
    Centering = 1;
elseif isempty(Centering)
        Centering = 1;
end

%%%%%%%%%%%%%%%%%
%%MAKE SEGMENTS%%
%%%%%%%%%%%%%%%%%
if exist('SegmentsID')~=1
   SegmentsID = MakeSegments(I);
end

%%%%%%%%%%%%%%%%%%%
%%MAKE SUB-MODELS%%
%%%%%%%%%%%%%%%%%%%

for i=1:size(SegmentsID,2)
   In = find(~SegmentsID(:,i));
   Out = find(SegmentsID(:,i));
   % Offsets
  if Centering
       Mx = nanmean(X(In,:));
       My = nanmean(y(In,:));
   else
       Mx = zeros(1,prod(DimX(2:end)));
       My = zeros(1,prod(DimY(2:end)));
   end
   %Centered data
   Xc = X(In,:)-repmat(Mx,length(In),1);
   yc = y(In,:)-repmat(My,length(In),1);
   
 %   %Centered data
 %  Xc = X(In,:)-ones(length(In),1)*Mx;
 %  yc = y(In,:)-ones(length(In),1)*My;
   
   % Calculate model 
   DimXc = DimX;DimXc(1)=size(Xc,1);
   Xc = reshape(Xc,DimXc);
   DimYc = DimY;DimYc(1)=size(yc,1);
   yc = reshape(yc,DimYc);
   [Xfactors,Yfactors,Core,B] = npls(Xc,yc,MaxFac,NaN);
   
  
   %Predict left-out samples
   for f=1:MaxFac
      Xc = X(Out,:)-ones(length(Out),1)*Mx;
      DimXc = DimX;DimXc(1)=size(Xc,1);
      Xc = reshape(Xc,DimXc);
 
      [ypr,T,ssx,Xres] = npred(Xc,f,Xfactors,Yfactors,Core,B,NaN);   
      Ex(f,Out,:)    = reshape(Xres,DimXc(1),prod(DimXc(2:end)));
      Ypred(f,Out,:) = ypr+ones(length(Out),1)*My;
      Ypredf = squeeze(Ypred(f,:,:));
      if size(y,2) == 1
         YpredfOut=Ypredf(Out);
      else
         YpredfOut=Ypredf(Out,:);
      end
%size(Ey(f,Out,:)),size(y(Out,:)),size(YpredfOut)
      if size(y,2)==1
         Ey(f,Out,:)    = squeeze(y(Out,:))'-squeeze(YpredfOut);
      else
         Ey(f,Out,:)    = squeeze(y(Out,:))-squeeze(YpredfOut);
      end
   end
end

  if Centering
       Mx = nanmean(X(In,:));
       My = nanmean(y(In,:));
   else
       Mx = zeros(1,prod(DimX(2:end)));
       My = zeros(1,prod(DimY(2:end)));
   end
   %Centered data
   Xc = X-repmat(Mx,size(X,1),1);
   yc = y-repmat(My,size(y,1),1);
        
%%Centered data
%Xc = X-ones(I,1)*Mx;
%yc = y-ones(I,1)*My;
[Xfactors,Yfactors,Core,B,ypred,ssx,ssy] = npls(reshape(Xc,DimX),reshape(yc,DimY),MaxFac,NaN);
Model.Xfactors = Xfactors;
Model.Yfactors = Yfactors;
Model.Core     = Core;
Model.B        = B;
Model.Yfitted  = ypred;
Model.MeanX    = Mx;
Model.MeanY    = My;

sseX_fit  = ssx(2:end,1);
sseY_fit  = ssy(2:end,1);
for f=1:MaxFac
   id=find(~isnan(Ex(f,:)));sseX_xval(f) = sum(Ex(f,id).^2);
   id=find(~isnan(Ey(f,:)));sseY_xval(f) = sum(Ey(f,id).^2);
   PRESS(f) = sum(Ey(f,id).^2);
end
RMSEP = sqrt(PRESS/I);

Xval = [sseX_fit sseX_xval'];
Yval = [sseY_fit sseY_xval'];
Xval = 100*(1-Xval/sum(Xc(find(~isnan(X))).^2));
Yval = 100*(1-Yval/sum(yc(find(~isnan(y))).^2));

XValResult.ypred       = Ypred;
XValResult.ssX_Xval    = sseX_xval;
XValResult.ssX_Fit     = sseX_fit';
XValResult.ssY_Xval    = sseY_xval;
XValResult.ssY_Fit     = sseY_fit';
XValResult.Percent.Xexp = Xval;
XValResult.Percent.Yexp = Yval;
XValResult.PRESS       = PRESS;
XValResult.RMSEP       = RMSEP;
XValResult.DefSegments = sparse(SegmentsID);

disp('  ')
disp('       Percent Variance Captured by N-PLS Model   ')
disp('  ')
disp('           -----X-Block-----    -----Y-Block-----')
disp('   LV #    Fitted     Xval      Fitted     Xval       RMSEP')
disp('   ----    -------   -------    -------   -------   ---------')
format = '   %3.0f     %6.2f    %6.2f     %6.2f    %6.2f    %6.4f';
for f = 1:MaxFac
   tab = sprintf(format,[f Xval(f,:) Yval(f,:) RMSEP(f)]);
   disp(tab)
end
disp('  ')
  
  
  
  
function SegmentsID = MakeSegments(I);
  
XvalMeth=questdlg('Which type of validation do you want to perform (ENTER => full Xval)?','Choose validation','Full X-validation','Segmented','Prespecified','Full X-validation');

switch XvalMeth
case 'Full X-validation'
   SegmentsID = speye(I);
   
case 'Segmented'
   prompt={'Enter the number of segments:'};
   eval(['def={''',num2str(min(I,max(3,round(I/7)))),'''};'])
   dlgTitle='Number of segments';
   lineNo=1;
   answer=inputdlg(prompt,dlgTitle,lineNo,def);
   NumbSegm=eval(answer{1});
   
   % Make sure the number of segments is OK
   while NumbSegm<2|NumbSegm>I
      prompt={'INCONSISTENT NUMBER CHOSEN (must be > 1 and <= samples)'};
      eval(['def={''',num2str(min(I,max(3,round(I/7)))),'''};'])
      dlgTitle='Number of segments';
      lineNo=1;
      answer=inputdlg(prompt,dlgTitle,lineNo,def);
      NumbSegm=eval(answer{1})
      NumbSegm<2|NumbSegm>I
   end
   
   XvalSegm=questdlg('How should segments be chosen?','Choose segmentation','111222333...','123123123...','Random','123123123...');
   switch XvalSegm
      
   case '111222333...'
      SegmentsID = sparse(I,NumbSegm);
      NumbInEachSegm = floor(I/NumbSegm);
      Additional = I-NumbInEachSegm*NumbSegm;
      currentsample = 1;
      for i=1:NumbSegm
         if i <=Additional
            add = NumbInEachSegm+1;
         elseif i<NumbSegm
            add = NumbInEachSegm;
         else
            add = I-currentsample+1;
         end
         SegmentsID(currentsample:currentsample+add-1,i)=1;
         currentsample = currentsample + add;
      end
   case '123123123...'
      SegmentsID = sparse(I,NumbSegm);
      NumbInEachSegm = floor(I/NumbSegm);
      for i=1:NumbSegm
         SegmentsID(i:NumbSegm:end,i)=1;
      end
   case 'Random'
      % Make nonrandom and then randomize order
      SegmentsID = sparse(I,NumbSegm);
      NumbInEachSegm = floor(I/NumbSegm);
      for i=1:NumbSegm
         SegmentsID(i:NumbSegm:end,i)=1;
      end
      rand('state',sum(100*clock)) %Randomize randomizer
      [a,b] = sort(rand(I,1))
      SegmentsID = SegmentsID(b,:);
   end
   
case 'Prespecified' 
      prompt={'Enter the name of the file defining the subsets'};
      def={'SegmentsID'};
      dlgTitle='Import definition';
      lineNo=1;
      answer=inputdlg(prompt,dlgTitle,lineNo,def);
      SegmentsID=eval(answer{1});
   
end % switch

function y = nanmean(x)
%NANMEAN Average or mean ignoring NaNs.
%   NANMEAN(X) returns the average treating NaNs as missing values.  
%   For vectors, NANMEAN(X) is the mean value of the non-NaN
%   elements in X.  For matrices, NANMEAN(X) is a row vector
%   containing the mean value of each column, ignoring NaNs.
%
%   See also NANMEDIAN, NANSTD, NANMIN, NANMAX, NANSUM.

%   Copyright (c) 1993-98 by The MathWorks, Inc.
%   $Revision: 2.8 $  $Date: 1997/11/29 01:45:53 $

if isempty(x) % Check for empty input.
    y = NaN;
    return
end

% Replace NaNs with zeros.
nans = isnan(x);
i = find(nans);
x(i) = zeros(size(i));

if min(size(x))==1,
  count = length(x)-sum(nans);
else
  count = size(x,1)-sum(nans);
end

% Protect against a column of all NaNs
i = find(count==0);
count(i) = ones(size(i));
y = sum(x)./count;
y(i) = i + NaN;





?? 快捷鍵說(shuō)明

復(fù)制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號(hào) Ctrl + =
減小字號(hào) Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
美女视频黄频大全不卡视频在线播放| 国产日韩综合av| 国产高清成人在线| 亚洲图片欧美视频| 国产校园另类小说区| 欧美三级三级三级爽爽爽| 国产高清在线观看免费不卡| 亚洲成av人片在线| 国产精品动漫网站| 久久美女艺术照精彩视频福利播放| 欧洲av一区二区嗯嗯嗯啊| 高清日韩电视剧大全免费| 日本sm残虐另类| 亚洲国产一区二区视频| 国产精品乱子久久久久| 精品欧美黑人一区二区三区| 欧美在线免费播放| 91在线观看下载| 国产大片一区二区| 精品影院一区二区久久久| 舔着乳尖日韩一区| 亚洲一区免费在线观看| 亚洲男人的天堂在线观看| 久久毛片高清国产| 精品国产乱码久久久久久久久| 欧美另类一区二区三区| 91成人看片片| 91看片淫黄大片一级在线观看| 国产白丝精品91爽爽久久| 国产专区欧美精品| 国产一区二区三区免费观看| 秋霞电影网一区二区| 天堂av在线一区| 图片区小说区国产精品视频| 亚洲一区二区视频| 一区二区三区免费看视频| 亚洲色图视频网站| 一色桃子久久精品亚洲| 国产精品国产三级国产普通话三级 | 色婷婷激情一区二区三区| 成人免费视频一区二区| 丁香激情综合五月| 国产成人自拍高清视频在线免费播放| 老色鬼精品视频在线观看播放| 色婷婷精品大在线视频| 91麻豆免费在线观看| 91一区一区三区| 在线精品视频免费观看| 欧美三级电影在线观看| 欧美日韩精品一区二区三区四区 | 成人性生交大片免费看在线播放| 韩国毛片一区二区三区| 国产伦理精品不卡| 成熟亚洲日本毛茸茸凸凹| 成人高清免费观看| 91在线国内视频| 欧美性欧美巨大黑白大战| 在线成人高清不卡| 欧美videossexotv100| 久久亚洲影视婷婷| 国产精品久久久久久久午夜片| 亚洲欧洲99久久| 一级中文字幕一区二区| 日韩精品亚洲专区| 国产在线国偷精品产拍免费yy | 色综合网站在线| 欧美在线短视频| 日韩一区二区精品葵司在线| 精品国产乱码久久久久久1区2区 | 在线观看免费视频综合| 欧美人与禽zozo性伦| 欧美成人精品福利| 国产日韩成人精品| 一区二区三区国产| 蜜臀av一区二区三区| 国产福利一区在线| 在线视频一区二区免费| 欧美大胆人体bbbb| 国产精品乱码久久久久久| 亚洲电影你懂得| 国产乱色国产精品免费视频| www.欧美日韩国产在线| 欧美精品自拍偷拍| 国产网站一区二区三区| 亚洲一区在线观看网站| 国产精品夜夜嗨| 欧美久久一二区| 欧美精彩视频一区二区三区| 亚洲一区自拍偷拍| 国产成人精品三级| 4438x成人网最大色成网站| 中文久久乱码一区二区| 三级久久三级久久| 成人三级伦理片| 日韩精品资源二区在线| 亚洲精品老司机| 国产成人亚洲综合色影视| 欧美日韩一区二区欧美激情| 亚洲国产精华液网站w| 日韩国产欧美一区二区三区| 91免费版在线| 久久久高清一区二区三区| 亚洲va欧美va天堂v国产综合| 国产精品主播直播| 欧美精品在线观看一区二区| 国产精品久久毛片| 精品一区二区三区在线观看| 国产精品毛片大码女人| 精品一区二区久久久| 欧美日韩一区二区三区高清| 一区二区中文视频| 国内久久精品视频| 日韩欧美精品在线| 亚洲国产精品久久久男人的天堂| 成人性生交大片免费看视频在线 | 久久精品国产精品亚洲精品| 在线国产电影不卡| 亚洲人成电影网站色mp4| 国产a级毛片一区| 精品久久久久久最新网址| 日韩国产一二三区| 51精品视频一区二区三区| 亚洲国产日韩av| 色婷婷久久久久swag精品| 最好看的中文字幕久久| aa级大片欧美| 国产精品久久午夜夜伦鲁鲁| 国产成人精品一区二| 久久理论电影网| 国产精品91一区二区| 久久免费电影网| 国产一区二区看久久| 欧美成人在线直播| 久久爱www久久做| 日韩免费性生活视频播放| 美女视频黄 久久| 日韩欧美你懂的| 久久精品国产成人一区二区三区| 9191久久久久久久久久久| 天堂成人国产精品一区| 91精品国产综合久久福利| 视频一区二区不卡| 日韩小视频在线观看专区| 琪琪久久久久日韩精品| 精品国产一区二区三区忘忧草| 老司机一区二区| 久久久午夜精品| 成人午夜精品一区二区三区| 中文久久乱码一区二区| 99精品欧美一区二区蜜桃免费| 中文字幕一区av| 91国偷自产一区二区使用方法| 夜夜亚洲天天久久| 在线不卡a资源高清| 美女视频一区二区| 国产欧美中文在线| 91在线精品一区二区| 亚洲第四色夜色| 日韩一级大片在线| 国产精品99久久久久久久vr | 精品国产sm最大网站免费看| 国产精品66部| 亚洲视频免费在线| 欧美日韩激情一区二区三区| 老汉av免费一区二区三区| 欧美国产在线观看| 在线免费一区三区| 久久国产精品露脸对白| 国产精品视频九色porn| 欧美亚洲国产一区二区三区| 日韩国产一二三区| 国产精品丝袜在线| 欧美日免费三级在线| 蜜臀av性久久久久蜜臀aⅴ| 国产日产欧美一区二区三区| 色综合久久66| 免费欧美在线视频| 国产精品无码永久免费888| 欧美午夜精品久久久久久孕妇| 青青草原综合久久大伊人精品| 久久先锋影音av| 欧美色综合网站| 日韩美女视频在线| 99riav一区二区三区| 日韩黄色免费电影| 中文字幕精品—区二区四季| 欧美日韩国产系列| 福利91精品一区二区三区| 亚洲香蕉伊在人在线观| 国产欧美久久久精品影院| 欧美日韩国产综合久久| 国产成人亚洲精品青草天美| 亚洲福利视频三区| 国产欧美精品一区| 日韩一区和二区| 色哟哟欧美精品| 国产99久久久国产精品潘金网站| 午夜精品视频一区| 亚洲视频一区二区在线| 久久久久久久综合日本|