knnrloowrtk.m

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

M
31
字号
function [misclassify, elapsed_time] = knnrLooWrtK(DS, kMax, plotOpt)
% knnrWrtK: Try various values of K in leave-one-out K-NNR.
%	[misclassify, elapsed_time] = knnrLooWrtK(DS, kMax, plotOpt)

%	Roger Jang, 19971227, 20080924

if nargin<1, selfdemo; return; end
if nargin<2, kMax=15; end
if nargin<3, plotOpt=0; end

designNum=size(DS.input, 2);
for k=1:kMax,
	recog(k)=knnrLoo(DS, k);
	fprintf('\t%d-NNR ===> %.2f%%.\n', k, recog(k)*100);
end

if plotOpt
	plot(1:kMax, recog*100, 'b-o'); grid on;
	title('Recognition rates using K-NNR');
	xlabel('K'); ylabel('Recognition rates (%)');
end


function selfdemo
DS=prData('iris');
designNum=size(DS.input, 2);
fprintf('Use of KNNRLOO for Iris data:\n');
fprintf('\tSize of DS = %d\n', designNum);
kMax=20;
plotOpt=1;
knnrLooWrtK(DS, kMax, plotOpt);

⌨️ 快捷键说明

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