Está en la página 1de 25

Tema 1: Anlisis Discriminante Lineal

Introduccin al Anlisis Discriminante


Supongamos que un conjunto de objetos est ya clasicado en una serie de grupos, es decir, se sabe previamente a qu grupos pertenecen. El Anlisis Discriminante se puede considerar como un anlisis de regresin donde la variable dependiente es categrica y tiene como categoras la etiqueta de cada uno de los grupos, y.las variables independientes son continuas y determinan a qu grupos pertenecen los objetos. Se pretende encontrar relaciones lineales entre las variables continuas que mejor discriminen en los grupos dados a los objetos. Un segundo objetivo es construir una regla de decisin que asigne un objeto nuevo, que no sabemos clasicar previamente, a uno de los grupos prejados con un cierto grado de riesgo. Es necesario considerar una serie de restricciones o supuestos: Se tiene una variable categrica y el resto de variables son de intervalo o de razn y son independientes respecto de ella. Es necesario que existan al menos dos grupos y para cada grupo se necesitan dos o ms casos. El nmero de variables discriminantes debe ser menor que el nmero de objetos menos dos: x1 , . . . , xp , donde p < (n 2) y n es el nmero de objetos. 1

Ninguna variable discriminante puede ser combinacin lineal de otras variables discriminantes. El nmero mximo de funciones discriminantes es igual al mnimo entre el nmero de variables y el nmero de grupos menos 1 (con q grupos, (q 1) funciones discriminantes). Las matrices de covarianzas dentro de cada grupo deben ser aproximadamente iguales. Las variables continuas deben seguir una distribucin normal multivariante. Algunos ejemplos de problemas de Anlisis Discriminante son: asignar un crneo a una de dos posibles especies animales, asignar un texto escrito a uno de entre dos posibles autores, decidir que una declaracin de impuestos es potencialmente defraudadora o no, determinar que una empresa est en riesgo de quiebra o no, decidir que un nuevo mtodo de fabricacin es ecaz o no. Existen varios enfoques posibles para este problema. El primero es el anlisis discriminante clsico debido a Fisher. Este procedimiento est basado en la normalidad multivariante de las variables y es ptimo bajo dicho supuesto, aunque en la realidad no siempre se cumple ste. Un segundo enfoque ms exible est basado en los modelos con variables dependientes cualitativas, de los cuales el ms utilizado es el modelo de regresin logstica. Un tercer enfoque es el de los rboles de regresin. Este mtodo conduce a buenos resultados cuando las variables son muy heterogneas.

Clasicacin entre dos poblaciones


Planteamiento del Problema
Sean P1 y P2 dos poblaciones donde se dene una variable aleatoria vectorial x k dimensional. Supondremos que x es absolutamente continua y que las funciones de densidad de ambas poblaciones, f1 y f2 , son conocidas. Se estudia el problema de clasicar

un nuevo individuo en una de estas poblaciones cuando se observa un vector x0 . El problema puede enfocarse desde el punto de vista de la Inferencia o de la Teora de Decisin, incluyendo adems probabilidades a priori (enfoque bayesiano) o no. A continuacin, se presenta la formulacin del problema ms general como un problema bayesiano de decisin. Se consideran las hiptesis siguientes: (i ) Las probabilidades a priori de que un individuo tomado al azar provenga de cada poblacin son conocidas: 1 , 2 , tales que 1 + 2 = 1. (ii ) Las consecuencias asociadas a los errores de clasicacin son c(2|1) y c(1|2), donde c(i|j ) es el coste de clasicar en Pi de un objeto que pertenece realmente a Pj . Estos costes se suponen conocidos. (iii ) Las preferencias del decisor por las consecuencias de sus acciones son lineales, es decir, maximizar la funcin de utilidad equivale a minimizar el coste esperado o coste de oportunidad de la decisin. Por lo tanto, podemos minimizar los costes de oportunidad de la decisin mediante el criterio del valor esperado. Las posibles decisiones en el problema son nicamente dos: asignar en P1 en P2 . Una regla de decisin equivale a hacer una particin del espacio muestral Ex (que en general ser RK ) en dos regiones: A1 y A2 = Ex A1 , tales que: 1. Si x0 A1 = d1 (asignar en P1 ). 2. Si x0 A2 = d2 (asignar en P2 ). Un vez observado el valor x0 podemos calcular la probabilidad a posteriori de que el elemento pertenezca a cada poblacin. Se denomina P (1|x0 ) la probabilidad a posteriori de que un elemento que ha tomado un valor igual a x0 pertenezca a P1 . Por el teorema de Bayes esta probabilidad es: P (1|x0 ) = P (x0 |1)P (1) . P (x0 |1)P (1) + P (x0 |2)P (2) 3

Las probabilidades P (x0 |1) y P (x0 |2) son proporcionales a f1 (x) y f2 (x), por lo que la ecuacin anterior puede escribirse como P (1|x0 ) = y para la segunda poblacin P (2|x0 ) = f2 (x0 ) 2 . f1 (x0 ) 1 + f2 (x0 ) 2 f1 (x0 ) 1 , f1 (x0 ) 1 + f2 (x0 ) 2

As, si clasicamos al elemento en el grupo 2 las posibles consecuencias son: (i ) Acertar con probabilidad P (2|x0 ), en cuyo caso no hay ningn coste de penalizacin. (ii ) Equivocarnos con probabilidad P (1|x0 ), en cuyo caso incurrimos en el coste asociado c(2|1) y el coste promedio o valor esperado de la decisin clasicar x0 en P2 ser: E (d2 ) = c(2|1)P (1|x0 ) + 0P (2|x0 ) = c(2|1)P (1|x0 ). Anlogamente, el coste esperado de la decisin: clasicar en el grupo 1: E (d1 ) = 0P (1|x0 ) + c(1|2)P (2|x0 ) = c(1|2)P (2|x0 ). Asignaremos el elemento al grupo 2 si su coste esperado es menor, es decir, sustituyendo en las expresiones anteriores, si: f2 (x0 ) 2 f1 (x0 )1 > , c (2|1) c (1|2) que indica que, siendo iguales el resto de trminos, clasicaremos en la poblacin P2 si (i ) la probabilidad a priori es ms alta; (ii ) la verosimilitud de que provenga de P2 es ms alta; (iii ) el coste de equivocarnos al clasicarlo en P2 es ms bajo. 4

Simplicaciones
(a) Si suponemos que los costes son iguales, c(1|2) = c(2|1) = c, la decisin depender nicamente de las probabilidades y asignaremos el elemento al grupo ms probable a posteriori. As, clasicaremos al elemento x0 en P2 si: 2 f2 (x0 ) > 1 f1 (x0 ) (b) Si las probabilidades a priori y los costes son iguales la condicin de clasicar en P2 se reduce a: f2 (x0 ) > f1 (x0 ) y la regla de decisin expresa simplemente que clasicamos al individuo en el grupo que pueda generarlo con mayor probabilidad.

Poblaciones Normales: Funcin lineal discriminante


Vamos a aplicar el anlisis anterior al caso en que f1 y f2 sean distribuciones normales con distintos vectores de medias pero idntica matriz de varianzas. Entonces, su funcin de densidad es fi (x) = 1 (2)k/2 |V |1/2 1 0 1 exp (x i ) V (x i ) . 2

La manera ptima es clasicar en la poblacin P2 si: 1 f1 (x) 2 f2 (x) > . c(2|1) c(1|2) Como ambos trminos son siempre positivos, tomando logaritmos y sustituyendo f (x) por su expresin, la ecuacin anterior se convierte en: 1 1 log 2 (x 2 )0 V1 (x 2 ) > log 1 (x 1 )0 V1 (x 1 ) log 2 2 es decir, operando, (x 1 ) V (x 1 ) > (x 2 ) V (x 2 ) 2 log 5
0 1 0 1

c (1|2) , c (2|1)

c(1|2) 2 c(2|1) 1

(1)

Llamando Di a la distancia de Mahalanobis entre el punto observado, x, y la poblacin i: Di = (x i )0 V1 (x i ) y suponiendo iguales los costes y las probabilidades a priori, c(1|2) = c(2|1); 1 = 2 , la regla resultante es:
2 2 > D2 Clasicar en 2 si D1

es decir, clasicar la observacin en la poblacin de cuya media est ms prxima, usando la distancia de Mahalanobis. Observemos que si las variables x tuvieran matriz de covarianzas V = I 2 la regla equivaldra a utilizar la distancia eucldea. Interpretacin de la regla de clasicacin La regla general anterior puede escribirse de una forma equivalente que permite interpretar mejor el mtodo de clasicacin utilizado. Si simplicamos 1, (x 1 )0 V1 (x 1 ) = x0 V1 x201 V1 x + 01 V1 1 (x 2 )0 V1 (x 2 ) = x0 V1 x202 V1 x + 02 V1 2 entonces, la regla divide al conjunto posible de valores de X en dos regiones cuya frontera es (simplicando trminos comunes en ambos miembros), la ecuacin: 201 V1 x + 01 V1 1 = 202 V1 x + 02 V1 2 2 log que, como funcin de x, equivale a: (2 1 ) V x =(2 1 ) V Llamando: w = V1 (2 1 ), (2)
0 1 0 1

c(1|2) 2 , c(2|1) 1

2 + 1 2

log

c(1|2) 2 . c(2|1) 1

entonces, la frontera entre las regiones de clasicacin para P1 y P2 puede escribirse como: 2 + 1 c(1|2) 2 0 0 wx=w (3) log 2 c(2|1) 1 6

que es la ecuacin de un hiperplano. Esta ecuacin indica que el procedimiento de clasicacin puede resumirse as: (1) Calcular el vector w con (2) y a continuacin el segundo miembro de (3) que depende slo de trminos conocidos; (2) Eescribir la funcin discriminante: g(x) = w0 x = w1 x1 + . . . + wk xk Esta funcin es una combinacin lineal de los valores de la variable con los pesos dados por el vector w. (3) Introducir en esta funcin los valores observados para el nuevo individuo a clasicar, x0 = (x10 , . . . , xk0 ). Segn la ecuacin (1) clasicaremos en la poblacin 2 cuando el primer miembro sea mayor que el segundo. En el caso particular de que c(1|2) 2 = c(2|1)1 la regla de decisin se reduce entonces a clasicar en P2 si: wx>w
0 0

1 + 2 2

(4)

Se puede comprobar que esta regla equivale a proyectar el punto x que queremos clasicar y las medias de ambas poblaciones sobre una recta, y despus asignar el punto a aquella poblacin de cuya media se encuentre ms prxima en la proyeccin. En resumen, el problema de clasicacin cuando los costes y las probabilidades a priori se suponen idnticos y las variables normales, se reduce a denir una variable escalar, z = w0 x, trasladar las medias y el punto observado a dicha escala, y asignarlo a la media ms prxima. La distancia entre las medias proyectadas es igual a su distancia de Mahalanobis en el espacio. La varianza de la nueva variable escalar es igual a la distancia de Mahalanobis entre las medias V ar(z ) = V ar(w0 x) = w0 V ar(x)w = w0 Vw = (2 1 )0 V1 (2 1 ) = D2 ya que w = V1 (2 1 ). 7

Generalizacin para varias poblaciones normales


Planteamiento General
La generalizacin de estas ideas para varias poblaciones es simple: el objetivo es ahora dividir el espacio Ex en G regiones A1 , . . . Ag , . . . , AG tales que si x pertenece a Ai el punto se clasica en la poblacin Pi . Supondremos que los costes de clasicacin son constantes y que no dependen de la poblacin en que se haya clasicado. Entonces, la regin Ag vendr denida por aquellos puntos con mxima probabilidad de ser generados por Pg , es decir donde el producto de la a priori y la verosimilitud sean mximas: Ag = {x Ex tal que g fg (x) > i fi (x), i 6= g } Si las probabilidades a priori son iguales i, i = 1/G y las distribuciones fi (x) son normales con la misma matriz de varianzas, la condicin anterior equivale a calcular la distancia de Mahalanobis del punto observado al centro de cada poblacin y clasicarlo en la poblacin que haga esta distancia mnima. 0 Al minimizar las distancias de Mahalanobis x g V1 x g se llega a la ecuacin
0 0 1 ( + j ) = wij x = wij 2 i 0 0 (x i ) = wij (j x). wij

Esta ecuacin admite la misma interpretacin en el sentido de las proyecciones que en el caso de dos poblaciones. Se construye una direccin wij y se proyectan las medias y el punto x que tratamos de clasicar sobre esta direccin y se asigna el punto a la poblacin de cuya media proyectada est ms prxima. Para ilustrar el procedimiento operativo, supongamos cinco poblaciones con k > 4 variables medidas sobre ellas Tenemos dos formas de realizar el anlisis. La primera es calcular para las G poblaciones las distancias de Mahalanobis y clasicar la observacin en la ms prxima. La segunda es hacer el anlisis comparando las poblaciones dos a dos. Supongamos que hemos obtenido de las comparaciones dos a dos los siguientes resultados (i j indica 8

que la poblacin i es preferida a la j , es decir, el punto se encuentra ms prximo a la media de la poblacin i que a la de j ): 1 2 2 3 4 3 5 4 Las poblaciones 2, 3 y 4 quedan descartadas (ya que 1 2 3 y 5 4). La duda se reere a las poblaciones 1 y 5. Construyendo (a partir de las reglas anteriores) la regla para discriminar entre estas dos ltimas poblaciones, supongamos que 51 entonces clasicaremos en la poblacin 5. Cuando k < G 1 el mximo nmero de proyecciones linealmente independientes que podemos construir es k, y ste ser el mximo nmero de direcciones a denir. Por ejemplo, supongamos que k = 2 y G = 5. Podemos denir una direccin de proyeccin cualquiera, por ejemplo, w12 = V1 (1 2 ) y proyectar todas las medias (1 , 2 , . . . , 5 ) y el punto x sobre dicha direccin. Entonces clasicaremos el punto en la poblacin cuya media proyectada est ms prxima. Ahora bien, es posible que sobre esta direccin coincidan las medias proyectadas de varias poblaciones. Si esto ocurre con, por ejemplo, las 4 y 5 , resolveremos el problema proyectando sobre otra segunda direccin w45 = V1 (4 5 ).

Poblaciones desconocidas. caso general


Regla estimada de clasicacin
Se trata ahora el caso de aplicar la teora anterior cuando en lugar de trabajar con poblaciones se consideran muestras. Abordaremos directamente el caso de G poblaciones posibles y, como caso particular, la discriminacin clsica para G = 2. La matriz general de datos X de dimensiones k n (k variables y n individuos), se puede particionar ahora en G matrices correspondientes a las subpoblaciones. Se denomina xijg a los elementos de estas submatrices, donde i representa el individuo, j la variable y g el grupo o submatriz. Llamaremos ng al nmero de elementos en el grupo g y el nmero total de observaciones se denomina: n=
G X g =1

ng

Vamos a llamar x0ig al vector la (1 k) que contiene los k valores de las variables para el individuo i en el grupo g , es decir, x0ig = (xi1g , . . . , xikg ) El vector de medias dentro de cada clase o subpoblacin es:
ng 1 X xg = xig ng i=1

que es un vector columna de dimensin k que contiene las k medias para las observaciones de la clase g . La matriz de varianzas y covarianzas para los elementos de la clase g ser: bg = S 1 X (xig xg )(xig xg )0 ng 1 i=1
ng

donde hemos dividido por ng 1 para tener estimaciones centradas de las varianzas y las covarianzas. Si suponemos que las G subpoblaciones tienen la misma matriz de varianzas y covarianzas, su mejor estimacin centrada con todos los datos ser una combinacin lineal de las estimaciones centradas de cada poblacin con un peso proporcional a su 10

precisin. Por tanto, bw = S


G X ng 1 g =1

nG

Llamaremos W a la matriz de sumas de cuadrados dentro de las clases que viene dada por bw W = (n G)S

bg S

como estimacin de V. En concreto, suponiendo iguales las probabilidades a priori y los costes de clasicacin, clasicaremos al elemento en el grupo que lleve a un valor mnimo de la distancia de Mahalanobis entre el punto x y la media del grupo. De todos modos, conviene antes de construir una regla de clasicacin realizar un test para comprobar que los grupos son realmente distintos, es decir, que no todas las medias g son iguales. El clculo de probabilidades de error puede hacerse sin aplicar la hiptesis de normalidad, aplicando la funcin discriminante a las n observaciones para clasicarlas. En el caso de dos grupos, obtendramos la tabla: Clasicado Realidad P1 P2 P1 n11 n12 P2 n21 n22 donde nij es el nmero de datos que viniendo de la poblacin i se clasica en j . El error aparente de la regla es: Error = n12 + n21 Total de mal clasicados . = n11 + n22 Total de bien clasicados

bw Para obtener las funciones discriminantes utilizaremos xg como estimacin de g , y S

Un procedimiento mejor es clasicar cada elemento con una regla en la que dicho elemento no ha intervenido: mtodo de validacin cruzada. Para ello, podemos construir n funciones discriminantes con las n muestras de tamao n 1 que resultan al eliminar uno a uno cada elemento de la poblacin y clasicar despus cada dato con la regla construida sin l. Este mtodo conduce a una mejor estimacin del error de clasicacin. 11

Variables cannicas discriminantes


El enfoque anterior puede generalizarse para encontrar variables cannicas que tengan el mximo poder discriminante para clasicar nuevos elementos respecto a las poblaciones. El objetivo es, en lugar de trabajar con las variables originales x, denir r variables cannicas, zi (i = 1, . . . , r) donde r = min(G 1, k ), que sean combinacin lineal de las originales: zi = a0i x de modo que 1. Las medias de las poblaciones g se expresan en trminos de las variables cannicas donde z1 , . . . , zg son vectores r 1 cuyas coordenadas son las proyecciones de las medias sobre las r variables cannicas; 2. Se hace lo mismo para el punto x0 a clasicar donde se denota a z0 como dicho vector; 3. Clasicamos el punto en aquella poblacin de cuya media se encuentre ms prxima, con la distancia eucldea, en el espacio de las variables cannicas z ; es decir, lo clasicaremos en la poblacin i si n(z0 zg )0 (z0 zg ) (z0 zi )0 (z0 zi ) = m
g

A continuacin se trata el problema de la obtencin de las variables cannicas z. Bsqueda del espacio de mximo poder discriminante Comenzamos buscando un vector u0 tal que, cuando proyectamos los puntos sobre l, se obtiene la mxima variabilidad entre los grupos en relacin a la variabilidad dentro de los grupos. La media de las observaciones del grupo g en esta nueva variable ser: z g = u0 xg donde xg es el vector k 1 que contiene las medias de las k variables en dicho grupo. La media para todos los datos ser: zT = u0 xT 12

donde xT es el vector k 1 que contiene las medias de las k variables uniendo todos los grupos. Se desea encontrar el vector u de manera que la separacin entre las medias de los grupos sea mxima. Una medida de la distancia entre las medias z 1 , . . . , z g es la suma de P 2 cuadrados entre las medias dada por G g=1 ng (z g z T ) . Para juzgar si ste trmino es

grande o pequeo, debemos compararlo con la variabilidad intrnseca de los datos dada P P por i g (zig z g )2 . En denitiva, el criterio para encontrar la mejor direccin de proyeccin consiste en maximizar la separacin relativa entre las medias, dada por: P ng (z g z T )2 . = PP (zig z g )2

Este criterio se puede formular en funcin de los datos originales. La suma de cuadrados dentro de grupos o variabilidad no explicada para los puntos proyectados, es: VNE
ng G ng G X X X X 2 = (zjg z g ) = u0 (xjg xg )(xjg xg )0 u = u0 Wu j =1 g =1 j =1 g =1

k, suponiendo que n G k y estima la variabilidad de los datos respecto a las medias de grupo que es la misma, por hiptesis, en todos ellos. La suma de cuadrados entre grupos, o variabilidad explicada, para los puntos proyectados es VE = =
G X g =1

bw . Esta matriz tiene dimensiones k k y tendr, en general, rango donde W = (n G)S

ng (z g z T )2 = ng u0 (xg xT )(xg xT )0 u =

= u0 Bu siendo B la matriz de suma de cuadrados entre grupos, que puede escribirse como B=
G X g =1

ng ag a0g

13

siendo ag = xg xT . La matriz B es cuadrada k k, simtrica y se obtiene como suma de G matrices de rango uno formadas por los vectores ag que no son independientes, ya que estn ligados por la relacin:
G X g =1

ng ag = 0,

que implica que el rango de B ser G 1. En resumen, la matriz W mide las diferencias dentro de grupos y la B las diferencias entre grupos. La funcin a maximizar puede escribirse tambin como = u01 Bu1 . u01 Wu1

Derivando e igualando a cero de la forma habitual: d 2Bu1 (u01 Wu1 ) 2(u01 Bu1 )Wu1 =0= = 0, du1 (u01 Wu1 )2 entonces, Bu1 = Wu1 es decir, como Bu1 = Wu1 y suponiendo que W es una matriz no singular, W1 Bu1 = u1 que implica que u1 debe de ser un vector propio de W1 B y es su valor propio asociado. Como queremos maximizar , u ser el vector propio asociado al mayor valor propio. Podemos plantearnos obtener un segundo eje tal que maximice con la condicin de que la nueva variable cannica z2 = u02 x est incorrelada con la primera, z1 = u01 x. Se puede demostrar que esto ocurre si tomamos las races caractersticas y vectores de W1 B (puede tambin obtenerse derivando la funcin lagrangiana). Los vectores propios de la matriz W1 B no sern, en general, ortogonales ya que aunque las matrices W1 y B son simtricas, su producto no necesariamente lo es. 14 u01 Bu1 u01 Wu1

Adems, el rango de esta matriz, W1 B, ser r = m n(k, G 1) (ya que el rango del producto de dos matrices es menor o igual que el de las originales) y ste es el mximo nmero de factores discriminantes que podemos obtener. Variables cannicas Este procedimiento proporciona r = m n(k, G 1) variables cannicas que vienen dadas por z = U0 x (5)

donde U0 es una matriz r k y x un vector k 1. El vector z de dimensin r 1, recoge los valores de las variables cannicas para el elemento x. Las variables cannicas as obtenidas resuelven el problema de clasicacin. En efecto, para clasicar un nuevo individuo x0 basta calcular sus coordenadas z0 con la expresin (5) y asignarle al grupo de cuya media transformada est ms prxima con la distancia eucldea. Se demuestra que, si estandarizamos adecuadamente estas variables, el clculo de las distancias eucldeas en el espacio de dimensin r de las variables cannicas es equivalente a calcular las distancias de Mahalanobis en el espacio de dimensin k de las variables originales.

Discriminacin cuadrtica. Discriminacin de poblaciones no normales


Cuando se supone normalidad y la hiptesis de igualdad entre varianzas no es admisible, el procedimiento de clasicacin se reduce a calcular el grupo donde se alcanza la mxima probabilidad a posteriori m n 1 1 0 1 log |Vj | + (x0 j ) Vj (x0 j ) ln(cj j ) . 2 2

j {1,...G}

Como habitualmente desconocemos Vj y j , stas se estiman mediante Sj y xj .

15

1 Se puede observar que al no anularse el trmino x00 Vj x0 ahora las funciones dis-

criminantes no son lineales y tendrn un trmino de segundo grado. En todo caso, el procedimiento operativo es anlogo. Aparece tambin un problema de discriminacin cuadrtica en el anlisis de determinadas poblaciones no normales. En el caso general de poblaciones arbitrarias tenemos dos alternativas: (i ) Aplicar la teora general y obtener la funcin discriminante que puede ser complicada. (ii ) Aplicar la teora de poblaciones normales, tomar como medida de distancia la distancia de Mahalanobis y clasicar x en la poblacin Pj para la cual b 1 (x xj ) D2 = (x xj )0 V j

sea mnima.

Para poblaciones discretas estas aproximaciones no son buenas. Se han propuesto mtodos alternativos basados en la distribucin multinomial o en la distancia 2 con relativa ecacia. El enfoque bayesiano permite una solucin general del problema sean o no iguales las matrices de covarianzas. Utilizando el teorema de Bayes para poblaciones normales con distinta varianza, y poniendo una distribucin a priori no informativa, puede obtenerse que la razn de las probabilidades a posteriori entre la poblacin i y la j es nj /2 1 i |Si |1/2 1 + aj (x0 xj )0 Sj (x0 xj ) P (i|x) = cij n /2 , P (j |x) j |Sj |1/2 1 + ai (x0 xi )0 S1 (x0 xi ) i
i

donde i son las probabilidades a priori, Sj las matrices de covarianzas estimadas, ai = ni /(n2 i 1), y cij = (n2 j (n2 i k/2 ni nj k 1) ni 2 2 nj ni k . 1) nj 2 2 16

Si los tamaos muestrales son aproximadamente iguales, ni ' nj , entonces cij ' 1.

Procedimientos Stepwise
Una vez obtenida una funcin discriminante es interesante evaluar el papel de cada una de las variables en dicha funcin. La manera habitual de hacerlo es comparando los posibles modelos que se pueden plantear con los distintos subconjuntos de variables que se pueden tomar. Si se elimina un grupo de variables se puede calcular las correspondientes sumas de cuadrados (varianza residual) que mide el impacto de las variables eliminadas. Denominamos a la varianza residual asociada con la puntuacin discriminante correspondiente a k variables como SSk , y a la asociada con la puntuacin discriminante con q variables eliminadas como SSkq , el estadstico F = (SSkq SSk ) /q SSk /(n k 1)

tiene una distribucin F de Snedecor con q y n (k + 1) grados de libertad cuando las q variables eliminadas no tienen inuencia en la discriminacin. Esto es equivalente al mtodo usado en regresin mltiple. En R se puede usar considerando la librera klaR.

17

Ejemplos
En los siguientes ejemplos se muestra, adems de los problemas, el cdigo en R correspondiente.

Ejemplo 1
Se consideran los datos recogidos sobre 32 crneos en el Tibet.
Longitud 190.50 172.50 167.00 169.50 175.00 177.50 179.50 179.50 173.50 162.50 178.50 171.50 180.50 183.00 169.50 172.00 170.00 182.50 179.50 191.00 184.50 181.00 173.50 188.50 175.00 196.00 200.00 185.00 174.50 195.50 197.00 182.50 Anchura 152.50 132.00 130.00 150.50 138.50 142.50 142.50 138.00 135.50 139.00 135.00 148.50 139.00 149.00 130.00 140.00 126.50 136.00 135.00 140.50 141.50 142.00 136.50 130.00 153.00 142.50 139.50 134.50 143.50 144.00 131.50 131.00 Altura 145.00 125.50 125.50 133.50 126.00 142.50 127.50 133.50 130.50 131.00 136.00 132.50 132.00 121.50 131.00 136.00 134.50 138.50 128.50 140.50 134.50 132.50 126.00 143.00 130.00 123.50 143.50 140.00 132.50 138.50 135.00 135.00 Altura.Cara 73.50 63.00 69.50 64.50 77.50 71.50 70.50 73.50 70.00 62.00 71.00 65.00 74.50 76.50 68.00 70.50 66.00 76.00 74.00 72.50 76.50 79.00 71.50 79.50 76.50 76.00 82.50 81.50 74.00 78.50 80.50 68.50 .Anchura.Cara 136.50 121.00 119.50 128.00 135.50 131.00 134.50 132.50 133.50 126.00 124.00 146.50 134.50 142.00 119.00 133.50 118.50 134.00 132.00 131.50 141.50 136.50 136.50 136.00 142.00 134.00 146.00 137.00 136.50 144.00 139.00 136.00 Tipo 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2

1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32

Los datos corresponden a dos tipos raciales diferentes en los que se practicaron diferentes medidas antropomtricas de longitudes, anchuras de crneo y de cara. El programa R tiene una funcin llamada lda (en la librera MASS) para calcular un anlisis lineal discriminante. 18

# Leo los datos Tibet <- read.table("c:/directorio/Craneos.txt") dimnames(Tibet)[[2]] <- c("Longitud", "Anchura", "Altura", "Altura.Cara", "Anchura.Cara", "Tipo") attach(Tibet)

m1 <- apply(Tibet[Type==1,-6],2,mean) m2 <- apply(Tibet[Type==2,-6],2,mean) l1 <- length(Type[Type==1]) l2 <- length(Type[Type==2]) x1 <- Tibet[Type==1,-6] x2 <- Tibet[Type==2,-6] S123 <- ((l1-1)*var(x1)+(l2-1)*var(x2))/(l1+l2-2) T2 <- t(m1-m2)%*%solve(S123)%*%(m1-m2) Fstat <- (l1+l2-5-1)*T2/(l1+l2-2)*5 pvalue <- 1-pf(Fstat,5,26) Fstat pvalue

m1 <- apply(Tibet[Type==1,-6],2,mean) m2 <- apply(Tibet[Type==2,-6],2,mean) l1 <- length(Type[Type==1]) l2 <- length(Type[Type==2]) x1 <- Tibet[Type==1,-6] x2 <- Tibet[Type==2,-6] S123 <- ((l1-1)*var(x1)+(l2-1)*var(x2))/(l1+l2-2)

19

a <- solve(S123)%*%(m1-m2) z12 <- (m1%*%a+m2%*%a)/2 z1 <- m1%*%a z2 <- m2%*%a z1 z2 a z12

# Se carga la libreria MASS library(MASS)

# Se hace un analisis discriminante lineal dis <- lda(Tipo ~ Longitud + Anchura + Altura + Altura.Cara + Anchura.Cara, data=Tibet, prior=c(0.5,0.5))

# Se consideran las medidas de dos nuevos craneos nuevosdatos <- rbind(c(171,140.5,127.0,69.5,137.0), c(179.0,132.0,140.0,72.0,138.5))

# Asigno a los dos nuevos datos los nombres de las variables colnames(nuevosdatos) <- colnames(Tibet[,-6])

nuevosdatos <- data.frame(nuevosdatos)

# Se predice el grupo de pertenencia de los nuevos datos predict(dis,newdata=nuevosdatos)$class

20

# Se predicen los datos originales en los grupos segun # la function discriminante grupo <- predict(dis,method="plug-in")$class

# Se observa el numero de datos originales bien y mal clasificados table(grupo,Type)

# Se usa un procedimiento Stepwise library(klaR) sc <- greedy.wilks(Tipo ~ .,data=Tibet, prior=c(0.5,0.5), "lda", niveau = 0.05) sc

# O bien sc <- stepclass(Tipo ~ .,data=Tibet, prior=c(0.5,0.5), "lda") sc

Ejemplo 2
En este ejemplo se ha generado una base de datos con 3 grupos donde las medias de dos variables x1 , x2 son distintas. La siguiente gura ilustra la posicin de las observaciones en el espacio original.

21

Se puede ver que los indicadores de grupos en las observaciones se disponen en tres grupos distintos y que ninguna de las dos variables observadas x1 , x2 tiene mayor poder discriminante. Se entrena la funcin discriminante con 5 observaciones cogidas al azar entre las 150. La proyeccin de la muestra de entrenamiento en las variables cannicas discriminantes se puede ver en la siguiente gura.

22

Se ve que la primera variable discrimina ms entre los grupos. En particular entre el grupo 1 y 3 que son los ms alejados en el espacio original. La segunda variable tiene menor poder discriminante (7 % frente a 93 % de la variable 1) y el grupo 2 es el ms cercano al 3 en el nuevo espacio. El resultado de la clasicacin de las restantes 145 observaciones (probabilidad a priori igual a 1/3 por cada grupo) se puede ver en la primera grca. Algunas observaciones entre el grupo 2 y 3 han sido confundidas por el clasicador. rm(list=ls(all=TRUE))

# Inicializo el generador de numeros aleatorios # para obtener los mismos datos y la misma muestra de entrenamiento set.seed(17)

# Matriz de datos 23

x1 <- c(rnorm(100,mean=5),rnorm(50,mean=10)) x2 <- c(rnorm(50,mean=5),rnorm(50,mean=10),rnorm(50,mean=10))

# Genero un factor con 3 niveles y 50 replicas de cada uno Ig <- gl(3,50)

# Dibujo los datos plot(x1,x2,pch=as.character(Ig),main="Datos Simulados")

misdatos <- data.frame(x1,x2,Ig)

# Elijo la muestra de entrenamiento train <- sample(1:150,5) table(misdatos$Ig[train])

library(MASS) z <- lda(Ig ~ ., misdatos, prior = c(1,1,1)/3, subset = train)

predigo <- predict(z, misdatos[-train, ])$class

# Dibujo las predicciones sobre los datos plot(x1,x2,pch=as.character(Ig),main="Datos Simulados") points(x=misdatos[-train,1],y=misdatos[train,2],pch="O",cex=2,col=as.numeric(predigo))

# Pongo la etiqueta en el grafico donde se quiera a <- locator(1)

24

legend(a,c("predic=1","predic=2","predic=3"),col=1:3,pch="O")

# Dibujo de las variables canonicas discriminantes plot(z, xlab="Variable 1",ylab="Variable 2",cex=2, main="Variables canonicas discriminantes")

25