距离判别的结果:
第一问
健康组的回代误判率为 误判组号为 2 4
患病组的回代误判率为 误判组号为 3 14
22
交叉确认误判:健康组的误判率为
交叉确认误判:患病组的误判率为
综合回代误判与交叉确认误判,得出总的误判率为:
第二问
20 组待判样本中,经马氏距离判断 , 判定为健康组的组号为
2 5 7 9 11 13 14 16 17
18 19 20
20 组待判样本中,经马氏距离判断 , 判定为患病组的组号为
1 3 4 6 8 10 12 15
Fisher 判别法的结果:
第一问
回代测试结果:
健康组的正确率为 误判组号为 2 4
患病组的正确率为 误判组号为 3 22
交叉确认误判:健康组的正确率为
交叉确认误判:患病组的正确率为
综合回代误判率和交叉误判率,总的误判率为
第二问
20 组待判样本中,经 fisher 判断 ,判定为患病组的组号为
1 3 4 6 8 10 12 15
20 组待判样本中,经 fisher 判断 ,判定为健康组的组号为
2 5 7 9 11 13 14 16 17
18 19 20
%马氏 距离判别 用样本离差阵的方法来求
%-----------made by 程智辉 2011-7-31----------
clear;tic;
load d:\;
load d:\;
jk=[data3(1:26,1:9);data3(28:42,1:9)];
hb=[data3(27,1:9);data3(43:78,1:9)];
u1=mean(jk);u2=mean(hb);
S1=zeros(9,9);S2=zeros(9,9);
for i=1:41
S1=S1+(jk(i,:)-u1)'*(jk(i,:)-u1);
end
for i=1:37
S2=S2+(hb(i,:)-u2)'*(hb(i,:)-u2);
end
%设两个样本有相同的协方差
V=(1/(41+37-2))*(S1+S2);
V1=inv(V);
for i=1:41
wjk(i)=(jk(i,:)-1/2*(u1+u2))*V1*(u1-u2)';
end
for i=1:37
whb(i)=(hb(i,:)-1/2*(u1+u2))*V1*(u1-u2)';
end
t=1;tt=1;
for i=1:20
wtest(i)=(test2(i,:)-1/2*(u1+u2))*V1*(u1-u2)';
if wtest(i)>0
jktest(t)=i;
t=t+1;
else
hbtest(tt)=i;
tt=tt+1;
end
end
fprintf(' 第二问 \n20 组待判样本中,经马氏距离判断 ,判定为健康组的组号为 \n');
disp(jktest);
fprintf('20 组待判样本中,经马氏距离判断 ,判定为患病组的组号为 \n');
disp(hbtest);
用fisher和马氏距离判断程序分析患乳腺癌 来自淘豆网www.taodocs.com转载请标明出处.