1
我必须使用k最近邻居来对虹膜数据进行分类,(k = 1:30)我已经将数据分成样本和涉及Leave-one-out交叉验证,所以我有以下脚本:knn中的leave-one-out交叉验证和混淆矩阵
load fisheriris
group=[ones(1,50), 2*ones(1,50), 3*ones(1,50)]';
for k=(1:30);
for i=(1:150);
sample=meas(i,:);
training1=meas;
training1(i,:)=[];
group_sample=group(i);
group_training=group;
group_training(i)=[];
c(i,k)=knnclassify(sample,training1,group_training,k);
A=confusionmat(group, c(i,k));
mean_error(k)=mean(A(:));
std_error(k)=std(A(:));
end
end
的问题是,我不能混淆矩阵,因为C返回我回来只有一个值(第一个样品),哪里出了问题,任何人可以帮助? ?谢谢!
它的工作原理!非常感谢! – user19565
@ user19565没问题,如果它可以工作,可以将其标记为已解决:http://meta.stackexchange.com/questions/5234/how-does-accepting-an-answer-work – Dan