Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- media1 = mean(c1,'r');
- media2 = mean(c2,'r');
- media3 = mean(c3,'r');
- c1 = matriz(1:50,1:4); //teste - tem que mudar
- c2 = matriz(51:100,1:4);
- c3 = matriz(101:150,1:4);
- cov1 = cov(c1);
- cov2 = cov(c2);
- cov3 = cov(c3);
- [a,b] = size(matriz);
- function g = discriminante(amostra,mat_cov,media,classe,total)
- [m,n]= size(classe)
- g = -0.5*log(abs(mat_cov)) - 0.5*(amostra - media)'*inv(mat_cov)*(amostra - media) + log(m/total);
- endfunction
- classe1 = zeros(1,5);
- classe2 = zeros(1,5);
- classe3 = zeros(1,5);
- for i = 1:n
- g1 = discriminante(m_trei(i:i,1:4),cov1,media1,c1,a);
- g2 = discriminante(m_trei(i:i,1:4),cov2,media2,c2,a);
- g3 = discriminante(m_trei(i:i,1:4),cov3,media3,c3,a);
- if g1>=g2 & g1>=g3
- classe1 = cat(1,classe1,m_trei(i:i,:));
- x = x+1;
- elseif g2>=d1 & g2>g3
- classe2 = cat(1,classe2,m_trei(i:i,:));
- y = y+1;
- elseif g3>g1 & g3>g2
- z = z+1;
- classe3 = cat(1,classe3,m_trei(i:i,:));
- end;
- end
- matriz = cat(1,classe1(2:x,:),classe2(2:y,:),classe3(2:z,:));
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement