% Cálculo del plano discriminante mónico Metodos Estadisticos 2008

clear;
clf;


L1=1;
S=xlsread('disc9.xls');

%Nsi=9
%Nno=9

Nsi = input('ingresar numero de datos SI:')
Nno = input('ingresar numero de datos NO:')

N=Nsi+Nno


% calculo de valores medios  para si y para no

MedioXSi=mean(S(1:Nsi,1));
MedioYSi=mean(S(1:Nsi,2));
MedioXNo=mean(S(Nsi+1:Nsi+Nno,1));
MedioYNo=mean(S(Nsi+1:Nsi+Nno,2));

	dX=MedioXSi-MedioXNo;
	dY=MedioYSi-MedioYNo;

% calculo de varianzas  para si y para no
    
    
varXSi=var(S(1:Nsi,1))*(Nsi-1);
varYSi=var(S(1:Nsi,2))*(Nsi-1);
varXNo=var(S(Nsi+1:Nsi+Nno,1))*(Nno-1);
varYNo=var(S(Nsi+1:Nsi+Nno,2))*(Nno-1);
Sxx=varXSi+varXNo;
Syy=varYSi+varYNo;
sxysi=cov(S(1:Nsi,1:2))*(Nsi-1);
sxyno=cov(S(Nsi+1:Nsi+Nno,1:2))*(Nno-1);
Sxy=sxysi(1,2)+sxyno(1,2);

L2=(Sxy*dX - Sxx*dY)/(Sxy*dY - Syy*dX);

Xmedio=mean(S(:,1));
Ymedio=mean(S(:,2));

L0=-Xmedio-L2*Ymedio;

Z=L0+L1*S(:,1)+L2*S(:,2);
 
'los coeficientes son Lo + x + L2 * y'
L0
L2
    
    %  Cálculo de estadístico G
    
MedioZSi=mean(Z(1:Nsi));
MedioZNo=mean(Z(Nsi+1:Nsi+Nno));

varZSi=var(Z(1:Nsi))*(Nsi-1);
varZNo=var(Z(Nsi+1:Nsi+Nno))*(Nno-1);

SZ=varZSi+varZNo;

'Estadistico G'
G=((MedioZSi-MedioZNo)^ 2)/SZ

% Proyecto 

P=G*S;
hold on;
plot(S(1:Nsi,1),S(1:Nsi,2),'o')
plot(S(Nsi+1:N,1),S(Nsi+1:N,2),'ro')

%plot(P(1:Nsi,1),P(1:Nsi,2),'o');
%plot(P(Nsi+1:N,1),P(Nsi+1:N,2),'ro');

X=-( L0+S(:,2)*L2);
XP=G*X;

plot(X,S(:,2),'k:');
%hold off;
shg;
