getcvdata.m

来自「一个关于数据聚类和模式识别的程序,在生物化学,化学中因该都可以用到.希望对大家有」· M 代码 · 共 54 行

M
54
字号
function cvData=getCvData(DS, m)% getcvData: Get m-fold cross validation data%	Usage: cvData=getCvData(DS, m)%%	For example:%		DS=prData('iris');%		cvData=getCvData(DS, 5);		%	Roger Jang, 20070410if nargin<1, selfdemo; return; end[dim, dataNum]=size(DS.input);subSize=round(dataNum/m);[classLabel, classSize]=elementCount(DS.output);classNum=length(classLabel);for i=1:classNum	classIndex{i}=find(i==DS.output);	% Indices of data in class iendfor i=1:m		cvData(i).DS.input=[];	cvData(i).DS.output=[];	cvData(i).TS.input=[];	cvData(i).TS.output=[];	index=[];	for j=1:classNum		subSize=round(classSize(j)/m);		if i~=m			indexRange=((i-1)*subSize+1):(i*subSize);		else			indexRange=((m-1)*subSize+1):length(classIndex{j});		end		index=[index, classIndex{j}(indexRange)];	end		cvData(i).DS.input=DS.input;	cvData(i).DS.output=DS.output;	cvData(i).DS.input(:, index)=[];	cvData(i).DS.output(:, index)=[];	tempIndex=1:dataNum;	tempIndex(index)=[];	cvData(i).DS.index=tempIndex;	cvData(i).TS.input=DS.input(:, index);	cvData(i).TS.output=DS.output(:, index);	cvData(i).TS.index=index;end% ====== Self demofunction selfdemoDS=prData('iris');cvData=getCvData(DS, 5);cvData(1).DScvData(1).TS

⌨️ 快捷键说明

复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?