Fisher法:
Wdbc:
sample1=data(23:46,:);
sample2=data(538:562,:);
sample=[sample1
sample2];
sp=data1(1:569,:);
sample_m1=mean(sample1);
sample_m2=mean(sample2);
m1=sample_m1';
m2=sample_m2';
sb=(m1-m2)*(m1-m2)';
s1=zeros(30);
for n=1:19
temp = (sample1(n,:)'-m1)*(sample1(n,:)'-m1)';
s1=s1+temp;
end;
s2=zeros(30);
for n=1:24
temp = (sample2(n,:)'-m2)*(sample2(n,:)'-m2)';
s2 = s2+temp;
end;
sw=s1+s2;
vw=(sw)\(m1-m2);
a_m1 = vw'*m1;
a_m2 = vw'*m2;
w0 = (a_m1+a_m2)/2;
for n=1:569
if(vw'*data(n,:)' - w0>0)
m1(n,:)=77;
else
m1(n,:)=66;
end;
end;
count1=0;
count2=0;
for n=1:569
if m1(n,:)==sp(n,:)&& m1(n,:)==77
count1=count1+1;
end
if m1(n,:)==sp(n,:)&& m1(n,:)==66
count2=count2+1;
end
end
class1_rate=count1/212
class2_rate=count2/357
class1_rate =
class2_rate =
sample1=data(1:14,:);
sample2=data(99:117,:);
sample=[sample1
sample2];
sp=data1(1:208,:);
sample_m1=mean(sample1);
sample_m2=mean(sample2);
m1=sample_m1';
m2=sample_m2';
sb=(m1-m2)*(m1-m2)';
s1=zeros(60);
for n=1:13
temp = (sample1(n,:)'-m1)*(sample1(n,:)'-m1)';
s1=s1+temp;
end;
s2=zeros(60);
for n=1:18
temp = (sample2(n,:)'-m2)*(sample2(n,:)'-m2)';
s2 = s2+temp;
end;
sw=s1+s2;
vw=(sw)\(m1-m2);
a_m1 = vw'*m1;
a_m2 = vw'*m2;
w0 = (a_m1+a_m2)/2;
for n=1:208
if(vw'*data(n,:)' - w0>0)
fisher线性识别与最邻近判别法 来自淘豆网m.daumloan.com转载请标明出处.