#ANALISIS DISCRIMINANTE #################### #Ejemplo1: B?sico para entender el an?lisis discriminante #################### #dos especies de mosquitos al que se le mide longitud trompa y longitud de ala X=matrix(c(138,164,140,170,124,172,136,174,138,182,148,182,154,182,138,190,156, 208,114,178,120,186,118,196,130,196,126,200,128,200),15,2,byrow=T) Y=c(rep(0,9),rep(1,6)) X=cbind(X,Y) X colnames(X)=c("Trompa","Ala","Cat") X_1=X[1:9,-3] X_1 S_1=var(X_1) X_2=X[10:15,-3] S_2=var(X_2) S=1/13*(8*S_1+5*S_2) solve(S) d=colMeans(X_1)-colMeans(X_2) w=solve(S)%*%as.matrix(d) #z=w'x=0.582x_1-0.382x_2 D2=t(as.matrix(d))%*%solve(S)%*%as.matrix(d) D=sqrt(D2) ########################################## # Comparaci?n con la funci?n lda de MASS # ########################################## library(MASS) l=lda(Cat~.,data=as.data.frame(X)) l$scaling w #Encontr? lo mismo: l$scaling/w q=qda(Cat~.,data=as.data.frame(X)) q ls(q) ########################################### #Clasificamos dis=t(w)%*%((colMeans(X_1)+colMeans(X_2))/2) #Asignaremos la clase 0 si z>dis y la clase 1 si z