lunes, 30 de junio de 2014

Distancia de KMN MATLAB

%%%%%%%%%%%%%%%% Crear Manzanas %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
manzanas=rand(2,20);
manzanas(1,:) = manzanas(1,:)* 6 + 7;
manzanas (2,:) = manzanas (2,:)*50 + 200;
plot(manzanas(1,:),manzanas (2,:),'m');
axis([0, 20 , 0, 255]);

%%%%%%%%%%%%%%%%%%%  Crear Naranjas %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
naranjas=rand(2,50);
naranjas(1,:) = naranjas(1,:)* 4 + 8 ;
naranjas (2,:) =naranjas (2,:)*110 + 105 ;
hold on;
plot(naranjas(1,:),naranjas (2,:),'o G');

%%%%%%%%%%%%%%%% Promedio de las naranjas y manzanas transpuesta %%%%%%%%%%%%%
promM= mean(manzanas')';
promN= mean(naranjas')';
plot(promM(1),promM(2), '<C ',promN(1),promN(2),'.R' );

%%%%%%%%%%%%%%%% Centros de Graficación %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%

prueba=[15;200];
plot(prueba(1) , prueba(2), 'd R');
distanciaM = norm((prueba - promM))
distanciaN = norm((prueba - promN))

%%%%%%%%%%%%%%%%%%%%%% Distancia de Naranjas %%%%%%%%%%%%%%%%%%%%%%%%%%%%
for n=1: 50
   disN(:,n)= norm(prueba -naranjas(:,n))
end
%%%%%%%%%%%%%%%%%%%%%% Distancia de Manzanas %%%%%%%%%%%%%%%%%%%%%%%%%%%%
for m=1: 20
   disM(:,m)= norm(prueba -manzanas(:,m))
end
%%%%%%%%%%%%%%%%%%%%% Ponerle subindices a los frutos %%%%%%%%%%%%%%%%%%
arregloN=[disN;ones(1,50)]   %Naranjas = 1
arregloM=[disM;zeros(1,20)]  %Manzanas = 0
%%%%%%%%%%%%%%%%%%%%% Arreglo con las distancias %%%%%%%%%%%%%%%%%%%%%%%
distancia= [arregloN,arregloM]
conjunto= sortrows (distancia')

contadorn=0;
contadorm=0;
for i=1:10

if conjunto (i,2) ==1
    contadorn= contadorn + 1;
else
contadorm= contadorm + 1;
end

end

disp('Total de elementos: ', num2str(contadorn + contadorm)])
disp(['Naranjas: ', num2str(contadorn)])
disp(['Manzanas: ', num2str(contadorm)])


No hay comentarios:

Publicar un comentario