📄 init.asv
字号:
function [x,feature]=init(data,textdata)
[n1,p1]=size(textdata);
x=zeros(n1,2); % label of class
feature=zeros(n1,(p1-1)); %data set add
MM=zeros(6,2);
for i=1:6
MM(i,2)=1e6;
end
for i=1:n1
if strcmp(textdata(i,1),'a')
feature(i,1)=1;
end
if strcmp(textdata(i,1),'b')
feature(i,1)=0;
end
if strcmp(textdata(i,1),'?')
feature(i,1)=floor((feature(i-1,1)+feature(i+1,1))/2); % an integer
end
if strcmp(textdata(i,4),'u')
feature(i,4)=1;
end
if strcmp(textdata(i,4),'y')
feature(i,4)=0.66;
end
if strcmp(textdata(i,4),'l')
feature(i,4)=0.33;
end
if strcmp(textdata(i,4),'t')
feature(i,4)=0;
end
if strcmp(textdata(i,4),'?')
feature(i,4)=(feature(i-1,3)+feature(i+1,3))/2;
end
if strcmp(textdata(i,5),'g')
feature(i,5)=1;
end
if strcmp(textdata(i,5),'p')
feature(i,5)=0.5;
end
if strcmp(textdata(i,5),'gg')
feature(i,5)=0;
end
if strcmp(textdata(i,5),'?')
feature(i,5)=(feature(i-1,5)+feature(i+1,5))/2;
end
if strcmp(textdata(i,6),'c')
feature(i,6)=1;
end
if strcmp(textdata(i,6),'d')
feature(i,6)=0.93;
end
if strcmp(textdata(i,6),'cc')
feature(i,6)=0.86;
end
if strcmp(textdata(i,6),'i')
feature(i,6)=0.79;
end
if strcmp(textdata(i,6),'j')
feature(i,6)=0.72;
end
if strcmp(textdata(i,6),'k')
feature(i,6)=0.64;
end
if strcmp(textdata(i,6),'m')
feature(i,6)=0.56;
end
if strcmp(textdata(i,6),'r')
feature(i,6)=0.48;
end
if strcmp(textdata(i,6),'q')
feature(i,6)=0.40;
end
if strcmp(textdata(i,6),'w')
feature(i,6)=0.32;
end
if strcmp(textdata(i,6),'x')
feature(i,6)=0.24;
end
if strcmp(textdata(i,6),'e')
feature(i,6)=0.16;
end
if strcmp(textdata(i,6),'aa')
feature(i,6)=0.08;
end
if strcmp(textdata(i,6),'ff')
feature(i,6)=0;
end
if strcmp(textdata(i,6),'?')
feature(i,6)=(feature(i-1,6)+feature(i+1,6))/2;
end
if strcmp(textdata(i,7),'v')
feature(i,7)=1;
end
if strcmp(textdata(i,7),'h')
feature(i,7)=0.875;
end
if strcmp(textdata(i,7),'bb')
feature(i,7)=0.75;
end
if strcmp(textdata(i,7),'j')
feature(i,7)=0.625;
end
if strcmp(textdata(i,7),'n')
feature(i,7)=0.5;
end
if strcmp(textdata(i,7),'z')
feature(i,7)=0.375;
end
if strcmp(textdata(i,7),'dd')
feature(i,7)=0.25;
end
if strcmp(textdata(i,7),'ff')
feature(i,7)=0.125;
end
if strcmp(textdata(i,7),'o')
feature(i,7)=0;
end
if strcmp(textdata(i,7),'?')
feature(i,7)=(feature(i-1,7)+feature(i+1,7))/2;
end
if strcmp(textdata(i,9),'t')
feature(i,9)=1;
end
if strcmp(textdata(i,9),'f')
feature(i,9)=0;
end
if strcmp(textdata(i,9),'?')
feature(i,9)=(feature(i-1,9)+feature(i+1,9))/2;
end
if strcmp(textdata(i,10),'t')
feature(i,10)=1;
end
if strcmp(textdata(i,10),'f')
feature(i,10)=0;
end
if strcmp(textdata(i,10),'?')
feature(i,10)=(feature(i-1,10)+feature(i+1,10))/2;
end
if strcmp(textdata(i,12),'t')
feature(i,12)=1;
end
if strcmp(textdata(i,12),'f')
feature(i,12)=0;
end
if strcmp(textdata(i,12),'?')
feature(i,12)=(feature(i-1,12)+feature(i+1,12))/2;
end
if strcmp(textdata(i,13),'g')
feature(i,13)=1;
end
if strcmp(textdata(i,13),'p')
feature(i,13)=0.5;
end
if strcmp(textdata(i,13),'s')
feature(i,13)=0;
end
if strcmp(textdata(i,13),'?')
feature(i,13)=(feature(i-1,13)+feature(i+1,13))/2;
end
if strcmp(textdata(i,16),'+') % label of class
x(i,1)=1;
end
if strcmp(textdata(i,16),'-')
x(i,1)=0;
end
if strcmp(textdata(i,16),'?')
x(i,1)=floor((x(i-1,1)+x(i+1,1))/2); % an integer
end
end
for i=1:n1
if data(i,1)>MM(1,1)
MM(1,1)=data(i,1);
end
if data(i,1)<MM(1,2)
MM(1,2)=data(i,1);
end
if data(i,2)>MM(2,1)
MM(2,1)=data(i,2);
end
if data(i,2)<MM(2,2)
MM(2,2)=data(i,2);
end
if data(i,7)>MM(3,1)
MM(3,1)=data(i,7);
end
if data(i,7)<MM(3,2)
MM(3,2)=data(i,7);
end
if data(i,10)>MM(4,1)
MM(4,1)=data(i,10);
end
if data(i,10)<MM(4,2)
MM(4,2)=data(i,10);
end
if data(i,13)>MM(5,1)
MM(5,1)=data(i,13);
end
if data(i,13)<MM(5,2)
MM(5,2)=data(i,13);
end
if data(i,14)>MM(6,1)
MM(6,1)=data(i,14);
end
if data(i,14)<MM(6,2)
MM(6,2)=data(i,14);
end
end
for i=1:n1
feature(i,2)=(data(i,1)-MM(1,2))/(MM(1,1)+MM(1,2));
feature(i,3)=(data(i,2)-MM(2,2))/(MM(2,1)+MM(2,2));
feature(i,8)=(data(i,7)-MM(3,2))/(MM(3,1)+MM(3,2));
feature(i,11)=(data(i,10)-MM(4,2))/(MM(4,1)+MM(4,2));
feature(i,14)=(data(i,13)-MM(5,2))/(MM(5,1)+MM(5,2));
feature(i,15)=(data(i,14)-MM(6,2))/(MM(6,1)+MM(6,2));
end
for i=1:n1
for j=1:15
if feature(i,j)>
end
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -