Você está na página 1de 155

Anlisis de datos con R a para Ingeniera Informtica a

Guillermo Ayala Gallego1 30 de mayo de 2008

Departamento de Estad stica e Investigacin Operativa. Universidad de Valencia. Guio llermo.Ayala@uv.es http://www.uv.es/ ayala

Indice general
1. Probabilidad: lo bueno si . . . 1.1. Experimento y probabilidad . . . . 1.2. Variable aleatoria . . . . . . . . . . 1.2.1. Teorema de Bayes . . . . . 1.3. Vectores aleatorios . . . . . . . . . 1.4. Distribucin normal multivariante o 2. Un 2.1. 2.2. 2.3. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1 1 2 3 3 6 1 1 8 9 10 11 12 13 14 14 15 1 1 4 4 5 7 7 8 8 11 12 13 15 17 17 18 18 18 19 19 20

muy breve repaso a la Estad stica Algo de Estad stica Descriptiva, poco . . . . . . Verosimilitud . . . . . . . . . . . . . . . . . . . . Estimacin . . . . . . . . . . . . . . . . . . . . . o 2.3.1. Estimacin insesgada de media y varianza o 2.3.2. Estimacin insesgada del vector de medias o varianzas . . . . . . . . . . . . . . . . . . 2.4. Estimador mximo veros a mil . . . . . . . . . . . 2.5. Contraste de hiptesis . . . . . . . . . . . . . . . o 2.5.1. Test del cociente de verosimilitudes . . . 2.5.2. Test de Wald . . . . . . . . . . . . . . . . 2.5.3. Intervalos de conanza . . . . . . . . . .

. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . y la matriz de co. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

3. Anlisis de datos categricos a o 3.1. Variables respuesta categricas . . . . . . . . . . . . . . . . . . . . . o 3.2. Inferencia con la distribucin binomial . . . . . . . . . . . . . . . . . o 3.2.1. Contraste de hiptesis simples . . . . . . . . . . . . . . . . . o 3.2.2. Intervalo de conanza . . . . . . . . . . . . . . . . . . . . . . 3.3. Inferencia para la multinomial . . . . . . . . . . . . . . . . . . . . . . 3.3.1. Contraste de una multinomial dada . . . . . . . . . . . . . . 3.4. Tablas de contingencia . . . . . . . . . . . . . . . . . . . . . . . . . . 3.4.1. Tablas de contingencia: distribucin conjunta, distribucin o o condicionada e independencia . . . . . . . . . . . . . . . . . . 3.4.2. Tipo de muestreo . . . . . . . . . . . . . . . . . . . . . . . . . 3.4.3. Comparacin de dos proporciones . . . . . . . . . . . . . . . o 3.4.4. Odds y odds ratio . . . . . . . . . . . . . . . . . . . . . . . . 3.5. Asociacin parcial en tablas 2 2 estraticadas . . . . . . . . . . . . o 3.6. Inferencia en tablas de contingencia . . . . . . . . . . . . . . . . . . 3.6.1. Intervalos de conanza para parmetros de asociacin . . . . a o 3.6.2. Contraste de independencia en tablas de doble entrada . . . . 3.7. Ms all del test ji-cuadrado . . . . . . . . . . . . . . . . . . . . . . . a a 3.7.1. Residuos . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3.8. Test de independencia con muestras peque as . . . . . . . . . . . . . n 3.8.1. Test exacto de Fisher para tablas 2 2 . . . . . . . . . . . . 3.9. Test exacto de Fisher y alternativa bilateral . . . . . . . . . . . . . . 3

4. Regresin o 4.1. Regresin lineal simple . . . . . . . . . . . . . o 4.2. Regresin lineal m ltiple . . . . . . . . . . . . o u 4.3. Estimacin de . . . . . . . . . . . . . . . . o 4.4. Algunos casos particulares . . . . . . . . . . . 4.5. Verosimilitud . . . . . . . . . . . . . . . . . . 4.6. Distribucin muestral de . . . . . . . . . . o 4.7. Bondad de ajuste . . . . . . . . . . . . . . . 4.8. Valoracin de las hiptesis del modelo . . . . o o 4.9. Inferencia sobre el modelo . . . . . . . . . . . 4.10. Seleccin de variables . . . . . . . . . . . . . o 4.10.1. Procedimientos que comparan modelos 4.10.2. Procedimientos basados en criterios . 4.11. Algunos ejemplos . . . . . . . . . . . . . . . 5. Anlisis cluster a 5.1. Disimilaridades . . . . . . . . . . . . . . 5.2. Cluster jerrquico . . . . . . . . . . . . a 5.3. Mtodos de particionamiento . . . . . . e 5.3.1. Mtodo de las k-medias . . . . . e 5.3.2. Particionamiento alrededor de los 5.4. Silueta . . . . . . . . . . . . . . . . . . 5.5. Algunos ejemplos . . . . . . . . . . . .

. . . . . . . . . . . . .

. . . . . . . . . . . . .

. . . . . . . . . . . . .

. . . . . . . . . . . . .

. . . . . . . . . . . . .

. . . . . . . . . . . . .

. . . . . . . . . . . . .

. . . . . . . . . . . . .

. . . . . . . . . . . . .

. . . . . . . . . . . . .

. . . . . . . . . . . . .

. . . . . . . . . . . . .

. . . . . . . . . . . . .

1 2 5 7 9 9 10 11 13 26 30 30 31 33 1 2 7 8 9 9 10 13

. . . . . . . . . . . . . . . . . . . . . . . . mediodes . . . . . . . . . . . .

. . . . . . .

. . . . . . .

. . . . . . .

. . . . . . .

. . . . . . .

. . . . . . .

. . . . . . .

. . . . . . .

. . . . . . .

. . . . . . .

6. Anlisis discriminante o de cmo clasicar con muestra de entrea o namiento 6.1. Un problema de probabilidad sencillo . . . . . . . . . . . . . . . . . 6.2. Dos poblaciones normales . . . . . . . . . . . . . . . . . . . . . . . . 6.3. Dos normales multivariantes . . . . . . . . . . . . . . . . . . . . . . 6.4. Dos poblaciones normales multivariantes con parmetros desconocia dos . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6.5. Anlisis discriminante con ms de dos poblaciones normales . . . . a a 6.6. Valoracin del procedimiento de clasicacin . . . . . . . . . . . . . o o 6.7. Variables discriminantes cannicas o discriminantes lineales . . . . . o 6.8. Algunos ejemplos . . . . . . . . . . . . . . . . . . . . . . . . . . . . 7. Modelos lineales generalizados 7.1. Componentes de un modelo lineal generalizado . . . 7.1.1. Modelos logit binomiales para datos binarios 7.1.2. Modelo loglineal de Poisson para conteos . . 7.1.3. Desviacin . . . . . . . . . . . . . . . . . . . o 7.2. GLM para datos binarios . . . . . . . . . . . . . . . 7.2.1. Funcin link identidad . . . . . . . . . . . . o 7.2.2. Ejemplo: Ronquido y enfermedad cardAaca . 7.3. GLM para conteos . . . . . . . . . . . . . . . . . . . 7.3.1. Apareamiento de cangrejos herradura . . . . 7.4. Respuesta ordinal: modelos logit acumulados . . . . 7.5. Sobre la interpretacin de los coecientes . . . . . o 7.6. Verosimilitud de un modelo lineal generalizado . . . 8. Componentes principales 4

1 4 5 5 7 11 14 17 20 1 1 2 2 3 3 4 4 4 4 8 10 10 1

. . . . . . . . . . . .

. . . . . . . . . . . .

. . . . . . . . . . . .

. . . . . . . . . . . .

. . . . . . . . . . . .

. . . . . . . . . . . .

. . . . . . . . . . . .

. . . . . . . . . . . .

. . . . . . . . . . . .

9. De cmo usar R en un tiempo razonable (no fcil, no) o a 9.1. Instalacin y cmo trabajar con R . . . . . . . . . . . . . o o 9.1.1. R y Windows . . . . . . . . . . . . . . . . . . . . 9.1.2. R y Linux . . . . . . . . . . . . . . . . . . . . . . 9.2. Cmo jar el directorio de trabajo? . . . . . . . . . . . . o 9.3. Etiquetas de valor y de variable . . . . . . . . . . . . . . . 9.3.1. Cmo etiquetar una variable? . . . . . . . . . . . o 9.4. Elaboracin de un informe a partir del cdigo R . . . . . o o 9.4.1. Sweave . . . . . . . . . . . . . . . . . . . . . . . . 9.5. R y Octave/Matlab . . . . . . . . . . . . . . . . . . . . . .

. . . . . . . . .

. . . . . . . . .

. . . . . . . . .

. . . . . . . . .

. . . . . . . . .

. . . . . . . . .

9 9 10 10 10 11 11 11 11 11 13 13 15 15 15 15

10.Datos 10.1. scoremaster . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 11.Matrices 11.1. Determinante de una matriz . . . . . . . . . . . . . . . . . . . . . . . 11.2. Determinante . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 11.3. Valores y vectores propios . . . . . . . . . . . . . . . . . . . . . . . .

Prlogo o
Cada vez hay ms datos. Tenemos ms datos introducidos en cheros. Y esto a a es lo peor. Si los datos estuvieran en hojas sueltas y perdidas pues no pasa nada. Se archivan los papeles y los datos no molestan. No, ahora los propios ordenadores o bien muchas personas accediendo desde distintos lugares, tienen el mal gusto de crear unas bancos de datos cada vez mayores. Cada vez con ms casos y con ms a a variables. El problema no es conseguir datos. Los tienes a precio de saldo. Te los dan sin que los pidas. Si tienes conocidos bilogos, mdicos, qu o e micos, psiclogos seguro o que tienen datos para analizar. Si trabajis en un hospital, tendris una legin de a e o mdicos (y cada vez ms enfermeros) con datos. Todo el mundo tiene datos. A los e a que tienen cari o. Que creen que tienen mucho valor. Pero que no saben qu hacer n e con ellos. En el mejor de los casos alg n dibujo estilo pastel (bueno, se le llama u diagrama de sectores pero es un pastel) o histograma. Que Dios nos libre de tanto dibujo que solo sirve para gastar papel y tinta! En estas notas se pretende (slo se pretende) partiendo de unos conocimientos o informticos que no sean bsicos y de unos conocimientos probabil a a sticos y estad sticos ms bien bsicos, llegar a poder hacer algo decente con un banco de datos. a a La parte de anlisis descriptivo de datos se obvia. Simplemente a lo largo del a curso se va utilizando y recordando. Ya est bien de perder el tiempo explicando a cmo hacer un histograma si luego lo hace un programa. o El tono de estas notas pretende ser ameno pues bastante tostn es lo que se o cuenta. No in til. Pero s tostn. Hay que asumirlo desde un principio. Esto no es u o Sexo en Nueva York. 1 Son unas notas de Estad stica con R [14]. 2 Este documento contiene unas notas de clase para la asignatura de Anlisis de a Datos de Ingeniera Informtica de la Universidad de Valencia. Pretende en cada a tema empezar desde un nivel bsico de contenidos para llegar al uso de la tcnica a e correspondiente. Es una realidad que el informtico acaba realizando anlisis de a a datos. Entre otras cosas porque suele ser la persona ms a mano o bien porque ya ha a programado el resto de la aplicacin que tambin incorporar alg n tipo de anlisis o e u a ms o menos sencillo. Y es una pena ver cmo se desaprovecha la informacin. a o o Por ello en estas notas pretendo tratar rpidamente muchos temas y, adems, que a a podamos utilizarlas. Por ello se recurre a R. Por su potencia y por su disponibilidad. Incluso en su propia casa y con una conexin a Internet no demasiado rpida puede o a el estudiante instalarse R y cualquier paquete que se necesite. Esto ya es bastante desde el punto de vista docente. Adems, cualquier procedimiento estad a stico est a en R. Casi se puede decir, que si no lo est, no merece la pena de utilizarse. a Se proponen distintos apndices como apoyo a conceptos anteriores necesarios. e Se hace un repaso rpido de los conceptos bsicos de la Probabilidad en el tema a a 1. Las ideas bsicas de la Estad a stica que utilizamos en el resto del curso aparecen
duda, la mejor serie de televisin de la historia. Hay que verla. o anuncio de la radio (Cadena Ser para ms seas) hablaba de una persona que no entend a n a porqu su profesor de Estad e stica lo hab suspendido. Es de suponer que la persona que escribi el a o anuncio estudiar Periodismo. All hay una asignatura de Estad a stica. Claramente le ha servido. Ha hecho un anuncio y le habrn pagado por ello. a
2 Un 1 Sin

en el tema 2. Ambos cap tulos con meros res menes que no sustituyen el repaso u de muchos de los conceptos en algunos de los textos que se citan en los cap tulos correspondientes. Estas notas estn orientadas para estudiantes de Ingenier Informtica y por a a a ello en muchas ocasiones se incluyen deniciones y conceptos bsicos que dicho a estudiante no tiene. Una introduccin genrica a la Probabilidad y la Estad o e stica que es adecuado hojear pues cubre los conceptos previos es el libro de texto de [4]. El inters fundamental de estas notas es dar una visin muy amplia sin perder e o demasiado tiempo en detalles de cada tcnica. En este sentido se intenta ir directo e al grano con lo que eso supone de dicultad a adida. Sin embargo, tiene la comn pensacin de ver cmo muchos de los conceptos que se estudian son reescritura uno o o de otro. Por n, un signo de edad es tener que escribir las cosas para que no se nos olviden. Quizs para que uno mismo lo aprenda y para no olvidarlo despus. En el a e fondo, todos vamos aprendiendo seg n lo explicamos y lo escuchamos. u A Sin duda, unas notas como las que siguen slo se pueden hacer utilizando L TEX o para escribir y el programa R [14] 3 para realizar el anlisis de los datos. Son dos a herramientas imprescindibles que se complementan perfectamente. Un tratamiento estad stico no acaba con un cdigo o con unos dibujos aislados. Acaba con un o informe. Con frecuencia, se dedica ms tiempo a explicar lo que se ha hecho, a a escribir el informe, que a la preparacin y tratamiento de los datos, al anlisis de o a A los datos. En este sentido, creo que una herramienta como L TEX es fundamental A utilizada con R. En este texto hablamos de anlisis de datos. No de L TEX. Sin a embargo, uno aprende a veces cosas importantes mientras estudia otras que cree A que lo son ms. En este sentido, habr referencias a L TEX. a a Finalmente veamos una gu de lectura del documento. Es muy habitual que a si uno empieza a leer un texto por el principio nunca pase ms all del primer o a a segundo cap tulo, y eso con suerte. Las notas estn escritas de manera que se lean a cada tema por separado sin ms conexiones entre ellos. De modo que si quieres un a peque o repaso de Probabilidad consulta el tema 1. Si patinas un poco en lo bsico n a de la Estad stica pues entonces hay que leer el tema 2. Son los unicos temas de carcter bsico. Los dems van al grano. En particular si te interesa cmo reducir a a a o la dimensin del banco de datos lee el tema 8. Si el problema que te quita el sue o o n es cmo dadas unas variables sobre un individuo clasicarlo en uno de g posibles o grupos conocidos a priori y de los cuales tienes ejemplos entonces no lo dudes y lee el tema 6. Si tienes datos y no saben si se disponen formando grupos y ni tan siquiera del n mero de grupos que tienes entonces has de acudir sin remisin al u o tema 5. Finalmente en los temas ??, 7 y ?? viene la artiller pesada. Como todos a sabemos los modelos lineales son el corazn de la Estad o stica, sin ellos, otras tcnicas e de anlisis de datos se la hubieran ventilado. Los modelos lineales es un esfuerzo a colectivo que ha construido una teor redonda, util, fcil de aprender y aplicar. a a Parece que casi todo est previsto y bien resuelto. Los modelos lineales generalizados a surgen de la envidia que todo lo corroe. Cuando la variable respuesta, en lugar de ser continua, como en los modelos lineales, es una respuesta binaria, o multinomial, o bien un conteo. Qu hacer? La teor de modelos lineales no se puede aplicar e a ni con calzadores. Sin embargo, con unos cuantos cambios tcnicamente simples e surgen unos modelos probabil sticos para analizar estos datos que son absolutamente preciosos. Un detalle prctico de enorme inters. Para programar con R en el sistema operaa e tiva Windows lo ms cmodo es utilizar RWinEdt ([11]) mientras que si trabajamos a o
3 La primera leccin sobre R es cmo citar el programa. En la l o o nea de comandos escribimos citation y nos devuelve la referencia bibliogrca. Del mismo modo lo podemos hacer si utilizamos a otro paquete. Por ejemplo tecleando citation(cluster) nos indica cmo citar el paquete cluster o que utilizamos en el tema 5.

en Linux la opcin ms cmoda es utilizar emacs con el paquete ESS. Se pueden o a o encontrar detalles adicionales cran.r-project.org.

10

Cap tulo 1

Probabilidad: lo bueno si . . .
Empezamos por donde hay que empezar. Con la Probabilidad. Temida, odiada. Despreciada porque habla de juegos. Por encima de todo, util, de una utilidad extra a. Da verg enza hablar de Estad n u stica sin citar algo de Probabilidad. 1 Y no lo vamos a hacer. Vamos a cumplir con la papeleta. En cualquier caso, si no te manejas bien con los conceptos bsicos probabil a sticos (variable aleatoria, vector aleatorio, distribucin conjunta y marginal, . . .) hay que leer alg n texto. Uno muy o u bueno, pero no fcil de encontrar, es [13]. a

1.1.

Experimento y probabilidad

Dadas un conjunto de condiciones, un experimento, no siempre podemos predecir exactamente lo que va a ocurrir. La Probabilidad es la disciplina matemtica que a estudia estos experimentos. El primer ejemplo que nos viene a la cabeza es el lanzamiento de una moneda. En primer lugar determinamos el conjunto de posibles resultados que se puede producir en la experiencia, es el espacio muestral, . Los posibles subconjuntos de A son los sucesos aleatorios y la probabilidad no nos dice si cada suceso si va a producir o no sino que se limita a cuanticar para cada experimento la mayor o menor certidumbre que tenemos en la ocurrencia de A antes de realizar la experiencia. P (A) es como se suele denotar habitualmente la probabilidad del suceso A. Obviamente cada suceso tiene asignada una probabilidad. Han de darse unas condiciones de consistencia m nimas que han de vericar las distintas probabilidades de los sucesos aleatorios. Son las siguientes Denition 1 (Medida de probabilidad) P funcin de conjunto denida sobre o los sucesos es una medida de probabilidad si: 1. (No negativa) P (A) 0 para todo A . 2. (La probabilidad del espacio muestral es uno) P () = 1. 3. (Numerablemente aditiva o aditiva) Si {An }n1 es una sucesin de sucesos o disjuntos entonces P (n1 An ) =
n1
1 De hecho, hay una teor muy extendida que dice que podemos saber Estad a stica sin ningn u conocimiento de Probabilidad. Esta creencia se considera un nuevo tipo de enfermedad mental.

P (An ).

1.2.

Variable aleatoria

Supongamos el experimento consistente en elegir a una individuo al azar de la Comunidad Valenciana. Obviamente el espacio muestral est formado por los disa tintos individuos. Si los numeramos tendr amos = {i }N donde N es el n mero u i=i total de personas de la Comunidad. Eleccin al azar supone que cada individuo o 1 tiene la misma probabilidad de ser elegido y viene dada por P ({i }) = N . Obviamente cuando se elige una muestra de personas pensamos en alguna caracter stica numrica de la misma por ejemplo su edad. Denotemos por X R la aplicacin e o tal que X() es la edad de la persona . Puesto que el individuo es seleccionado de un modo aleatorio, tambin ser aleatoria la cantidad X(). La aplicacin X e a o recibe el nombre de variable aleatoria. Si B es un subconjunto arbitrario de n u meros reales entonces cualquier armacin de inters sobre la variable aleatoria X o e suele poderse expresar como P ({ : X() B}). Por ejemplo, si nos interesa la proporcin de personas que tienen 37 o ms a os esto supone plantearse el valor de o a n P ({ : X() [37, +)}). Dos son los tipos de variables de mayor inters prctico, las variables aleatorias e a discretas y las continuas. Una variable aleatoria se dice discreta si toma un conjunto de valores discreto, esto es, nito o si innito numerable. Si el conjunto de valores que puede tomar lo denotamos por D entonces se dene la funcin de probabilidad o de X como P (X = x). En estas variables se tiene que P (a X b) = P (X = x),
axb

(1.1)

para cualesquiera valores reales a b. Una variable aleatoria se dice continua cuando
b

P (a X b) =

f (x)dx,
a

(1.2)

para cualesquiera valores reales a b. La funcin f recibe el nombre de funcin o o de densidad (de probabilidad) de la variable X. De un modo genrico cuando se habla de la distribucin de una variable aleatoria e o X hablamos de las probabilidades P (X B) para cualquier subconjunto B de R. Obviamente, para variables discretas, P (X B) = y para variables continuas P (X B) = f (x)dx.
A

P (X = x)
xB

(1.3)

(1.4)

En resumen, si conocemos la funcin de probabilidad o la de densidad conocemos o la distribucin de la variable. o Se dene la funcin de distribucin de una variable aleatoria X como la funcin o o o real de variable real dada por F (x) = P (X x) con x R. Una variable suele describirse de un modo simple mediante su media y su varianza. La media nos da una idea de alrededor de qu valor se producen los vae lores aleatorios de la variable mientras que la varianza cuantica la dispersin o de estos valores alrededor de la media. Se denen para variables discretas como: la media es EX = = xD xP (X = x); mientras que la varianza es var(X) = 2 = E(X )2 = xD (x )2 P (X = x). Habitualmente adems a de la varianza se suele utilizar para medir variabilidad la desviacin tpica dada por o = var(X). 2

En variables continuas las deniciones de media y varianza son las anlogas sustia tuyendo sumatorios por integrales, de modo que la media se dene como EX = = + + 2 2 a xf (x)dx mientras que la varianza ser var(X) = = (x ) f (x)dx. En tablas 1.1 y 1.2 presentamos un breve resumen de las distribuciones que vamos a utilizar en este curso.

1.2.1.

Teorema de Bayes

Tenemos el espacio muestral y una particin de dicho espacio, B1 , . . . , Bk , esto o es, sucesos disjuntos dos a dos y tales que su unin cubren todo el espacio muestral. o Entonces se tiene que, para cualquier suceso A, P (Bi | A) =
k j=1

P (A | Bi )P (Bi )

P (A | Bj )P (Bj )

(1.5)

1.3.

Vectores aleatorios

Supongamos X = (X1 , . . . , Xd ) un vector aleatorio con d componentes. Tanto si el vector es discreto (todas sus variables aleatorias componentes son discretas) como si es continuo denotaremos la correspondiente funcin de probabilidad o de o densidad conjunta mediante f (x1 , . . . , xn ). Si X es discreto entonces f (x1 , . . . , xn ) = P (X1 = x1 , . . . , Xn = xn ) y hablamos de funcin de probabilidad. En lo que sigue o hablamos del caso continuo. Todas las expresiones son anlogas en el caso discreto a sustituyendo la integral por el sumatorio correspondiente. Si X = (X1 , . . . , Xd ) es un vector continuo entonces
b1 bd

P (a1 X1 b1 , . . . , ad X1 bd ) =

...
a1 ad

f (x1 , . . . , xd )dx1 . . . dxn , (1.6)

para cualesquiera ai bi con i = 1, . . . , d. En particular la distribucin del vector suele venir descrita mediante el vector o de medias y por la matriz de covarianzas. Si para la i-sima variable Xi consideramos la media i = EXi entonces el e vector de medias viene dado por 1 . = . . d

Si no hace falta indicar el vector X entonces denotaremos simplemente en lugar de X . Para cada par de variables Xi y Xj podemos considerar su covarianza denida como ij = cov(Xi , Xj ) = E(Xi EXi )(Xj EXj ) = E(Xi Xj ) EXi EXj . Obviamente si Xi = Xj entonces cov(Xi , Xi ) = var(Xi ), es decir, la covarianza de una variable consigo misma es la varianza de la variable, es decir, ii = var(Xi ). Dado el vector aleatorio X podemos consider la covarianza de cada par de variables y construir la matriz que en la posicin (i, j) tiene dicha covarianza. Es la matriz o de covarianzas, tambin llamada en la literatura matriz de varianzas, matriz de e varianzas-covarianzas o matriz de dispersin. La denotaremos por , es decir, o 11 . . . 1d . . . . . = . . . . d1 . . . dd 3

Cuadro 1.1: Distribuciones discretas Distribucin o Bernoulli Binomial Funcin de probabilidad o f (x|p) = px (1 p)1x si x = 0, 1 n f (x|n, p) = px (1 p)nx si x = 0, 1, . . . , n x 0 10 1 A A@ B A @ x nx 0 1 si x = 0, . . . , n. f (x|A, B, n) = A+B A @ n x f (x|p) = p(1 p) si x = 0, 1, 2, . . . r+x1 f (x|r, p) = pr (1 p)x si x = 0, 1, 2, . . . x x f (x|) = e x! si x = 0, 1, . . . Media p np Varianza p(1 p) np(1 p)
nAB(A+Bn) (A+B)2 (A+B1)

Hipergeomtrica e Geomtrica e Binomial Negativa Poisson

nA A+B

1p p r(1p) p

1p p2 r(1p) p2

Cuadro 1.2: Distribuciones continuas Distribucin o Uniforme Normal, N (, 2 ) Gamma Ga(, ) Exponencial Expo() Ji-Cuadrado 2 () Beta Be(, ) t-Student t() F-Snedecor F (m, n) Weibull(, ) Lognormal
a La

Funcin de densidad o
1 si < x < 1 x 2 1 f (x|, 2 ) = 2 e 2 ( ) x R f (x|, ) = () x1 ex si x > 0 a x 1 f (x | ) = exp si x 0 2 X () si X Ga( , 1 ) 2 2 (+) f (x|, ) = ()() x1 (1 x)1 si 0 < x < 1 +1 2 2 ( +1 ) 2 f (x) = ( ) 1 + x x R 2 m/21 ( m+n ) x 2 f (x) = ( m )( n ) mm/2 nn/2 (mx+n)(m+n)/2 si x > 0 2 2 x f (x | , ) = x1 exp ( ) si x > 0 2 X 2

Media
+ 2

Varianza
()2 12 2 2 2

f (x|, ) =

2
(+)2 (++1) 2 si > 2 2n2 (m+n2) m(n2)2 (n4) si n > 4 2 2 1 2 1 (2( ) ( ))

0 si > 1
n (n2) si 1 ( )

n>2

X N (, ) e

LN (, )

funcin gamma se dene como () = o

R +
0

x1 exp{x}dx, que existe y es nita > 0

En general si consideramos dos vectores aleatorios X = (X1 , . . . , Xd ) e Y = (Y1 , . . . , Yp ) denotaremos cov(X1 , Y1 ) . . . cov(X1 , Yp ) . . . . . . cov(X, Y ) = . . . cov(Xd , Y1 ) . . . cov(Xd , Yp ) y ser la matriz de covarianzas entre dichos vectores. a Si los vectores X e Y son independientes se verica que cov(X, Y ) = 0. Dado el vector X = (X1 , . . . , Xd ) podemos considerar la matriz de correlaciones que en la posicin (j, k) tiene el coeciente de correlacin entre las variables o o jk Xi y Xj , jk = jjkk , es decir, 1 . P = . . d1 12 . . . d2 . . . 1d . . . . . . ... 1

Obviamente, como la matriz de covarianzas, la matriz de correlaciones es simtrica e ya que jk = kj . Si denotamos por D = diag(11 , . . . , dd ) entonces tenemos que P = D 2 D 2 . Propiedades del vector de medias y la matriz de covarianzas Supongamos que tenemos una matriz A de dimensiones pd con p d y de rango p (tiene pues p las y p columnas que son linealmente independientes). Tenemos un vector aleatorio X con d componentes y consideramos el vector Y = Ax, esto es, consideramos la transformacin lineal del vector X asociada a la matriz A. Entonces o se tiene que Y = E[Y ] = AE[X] = AX . (1.8) y cov(Y ) = cov(AX) = Acov(X)A . (1.9)
1 1

(1.7)

1.4.

Distribucin normal multivariante o

Veamos dos deniciones equivalentes. Denition 2 Sea Y = (Y1 , . . . , Yd ) un vector aleatorio d-dimensional. Se dice que el vector Y tiene una distribucin normal multivariante si tiene por funcin de o o densidad conjunta f (y|, ) = 1 (2) 2 || 2
d 1

exp

1 (y ) 1 (y ) , 2

(1.10)

donde < yj < +, j = 1, . . . , d y = [jk ] es una matriz denida positiva ( > 0). Se puede probar que EY = y var(Y ) = y por ello se suele denotar Y Nd (, ). (1.11)

Se tiene que si Y1 , . . . , Yd son variables aleatorias con distribucin normal indepeno dientes con medias nulas y varianza com n 2 entonces se tiene que Y Nd (0, 2 Id ). u 6

Teorema 1 Supongamos Y Nd (, ) y sea Y = Y (1) , Y (2) = (1) , (2) = 11 21 12 , 22

donde Y (i) y (i) son vectores di 1 y ii es una matriz di di (con d1 + d2 = d). Se verican las siguientes propiedades: 1. Si C es una matriz q d de rango q entonces CY Nq (C, CC ). 2. Cualquier subvector de Y tiene una distribucin normal multivariante. En o particular, se tiene que Y (1) Nd1 ((1) , 11 ). 3. Y (1) e Y (2) son independientes si cov(Y (1) , Y (2) ) = 0. 4. Si Ui = Ai Y (i = 1, . . . , m) y cov(Ui , Uj ) = 0 para i = j entonces los distintos vectores Ui son independientes. 5. (Y ) 1 (Y ) 2 . d 6. La distribucin condicionada de Y (2) , dado Y (1) = y (1) es Nd2 ((2) +21 1 [y (1) o 11 (1) ], 22,1 ) donde 22,1 = 22 21 1 12 . 11 Una segunda manera en que podemos denir la distribucin normal multivariano te es del siguiente modo. Denition 3 Y tiene una distribucin normal multivariante si a Y = i=1 ai Yi o tiene una distribucin normal univariante para cualquier vector a = (a1 , . . . , ad ) . o Si EY = and cov(Y ) = > 0 entonces Y Nd (, ). Nota de R 1 (notaR106) Uno de los paquetes o libreras para trabajar con la normal multivariante es el paquete mvtnorm > library(mvtnorm) Fijamos el vector de medias y la matriz de covarianzas de una normal bivariante > mu = c(4.5, 7.3) > Sigma = matrix(c(7.097258, 3.885963, 3.885963, 3.371314), 2, + 2) Fijamos los puntos en los que vamos evaluar dicha funcin de densidad conjunta o > npuntos = 50 > x = seq(mu[1] - 3 * sqrt(Sigma[1, 1]), mu[1] + 3 * sqrt(Sigma[1, + 1]), len = npuntos) > y = seq(mu[2] - 3 * sqrt(Sigma[2, 2]), mu[2] + 3 * sqrt(Sigma[2, + 2]), len = npuntos) y la evaluamos. > > + + + + + > > z = NULL for (i in 1:npuntos) { for (j in 1:npuntos) { z = rbind(z, c(x[i], y[j], dmvnorm(c(x[i], y[j]), mean = mu, sigma = Sigma))) } } persp(z) contour(z) 7
d

Cmo generamos datos de una normal multivariante? Consideremos un vector de o medias generado al azar con valores entre 0 y 1. La matriz de covarianzas la generamos tambin aleatoriamente. Para ello, generamos en primer lugar una matriz e cuyos elementos son uniformes en el intervalo unitario. El producto de esta matriz por su traspuesta es denida positiva y la podemos utilizar como matriz de covarianzas. > mu = runif(5) > A = matrix(runif(5 * 5), ncol = 5, nrow = 5) > Sigma = t(A) %*% A Generamos datos con el vector de medias y matriz de covarianzas . > (x = rmvnorm(10, mean = mu, sigma = Sigma)) [1,] [2,] [3,] [4,] [5,] [6,] [7,] [8,] [9,] [10,] [,1] [,2] [,3] [,4] [,5] 3.4575701 0.8308993 2.4733453 1.9360517 2.6605387 1.9275254 0.8371593 1.3174912 1.4243853 0.9689455 2.3652157 -1.0234748 2.0113015 1.9121250 2.5427971 2.1928519 2.1395744 2.3842476 2.1126599 1.7625943 2.9372695 2.0654236 2.9437489 2.6477114 1.9236600 1.6134986 1.2146367 0.8529311 0.5597075 1.0364263 0.7812223 0.5817880 0.6076207 0.5463480 0.6898311 1.5843938 1.5510367 1.9970804 1.4463732 2.4430085 0.6605728 -0.6086172 0.4355153 0.6543631 0.7137439 3.1727634 2.9578943 3.0416038 2.5259566 2.2397013

Una versin extendida de la nota se puede ver en o http: // www. uv. es/ ayala/ DOCENCIA/ ad/ PDF/ notaR106. pdf y el cdigo utilio zado aparece en http: // www. uv. es/ ayala/ DOCENCIA/ ad/ codigoR/ notaR106R. R NA

Cap tulo 2

Un muy breve repaso a la Estad stica


Slo pretendemos jar notacin y recordar algunos de los conceptos bsicos. Es o o a ms que recomendable consultar alg n texto de introduccin a la Estad a u o stica. Hay tantos y, muchos, tan buenos que es casi un pecado recomendar alguno. El que se tenga a mano ser bueno. Teniendo en cuenta que este texto est muy orientado al a a uso de la Estad stica con R [14] ser bueno consultar [16] en donde se presenta la a estad stica bsica con el programa. a

2.1.

Algo de Estad stica Descriptiva, poco

Cuando tenemos un banco de datos lo primero y conveniente es describir de un modo sencillo dichos datos, bien mediante unos res menes numricos o bien medianu e te unos res menes grcos. Esto es lo que se conoce como Estad u a stica descriptiva. Veamos alg n ejemplo para recordar estos conceptos. u Nota de R 2 (notaR150) Vamos a realizar un anlisis descriptivo de unos datos a relativos a hospitalizacin ambulatoria. Empezamos cargando el chero de datos. o > load("../data/scoremaster") Lo que acabamos de cargar es un data frame cuyo nombre es scoremaster. Hemos de saber cules son las variables que lo componen. a > names(scoremaster) [1] [6] [11] [16] [21] "score" "score2" "score3" "score4" "asa" "eg1" "eg2" "eg3" "score5" "sexo" "d1" "d2" "d3" "especialidad" "T.TOTALP" "t1" "t2" "t3" "intensidad" "T.QUIRUR" "s1" "s2" "s3" "tipoanes" "edad"

Para poder trabajar con los nombres de las variables hemos de adjuntar el banco de datos > attach(scoremaster) Podemos ver los primeros diez valores de la variable score > score[1:10] 1

[1] 6 4 5 6 7 6 7 8 6 5 Levels: 3 < 4 < 5 < 6 < 7 < 8 De las variables consideradas algunas son categricas como puede ser la especiao lidad o tipoanes (tipo de anestesia), otras son ordinales como score, score2, score3, . . . mientras que otras son continuas como T.TOTALP o T.QUIRUR. Es interesante utilizar la funcin extractora summary sobre un data frame. o > summary(scoremaster) score 3: 13 4: 89 5:199 6:276 7:219 8:126 eg1 0: 18 1:545 2:359 d1 0: 18 1:360 2:544 t1 0: 50 1:359 2:513 s1 0: 17 1:307 2:598 score2 eg2 d2 3 : 7 0 : 27 0 : 36 4 : 33 1 :377 1 :359 5 :133 2 :359 2 :366 6 :234 NAs:159 NAs:161 7 :192 8 :162 NAs:161 eg3 d3 t3 s3 0 : 9 0 : 10 0 : 0 0 : 0 1 : 78 1 : 76 1 : 9 1 : 45 2 : 51 2 : 51 2 :127 2 : 92 NAs:784 NAs:785 NAs:786 NAs:785

score3 3 : 2 4 : 3 5 : 34 6 : 45 7 : 34 8 : 20 NAs:784 score4 score5 especialidad intensidad tipoanes Min. : 5.0 Min. : 4.0 1 :325 1:168 General:746 1st Qu.: 6.0 1st Qu.: 5.5 2 :163 2:426 Plexo :108 Median : 6.5 Median : 6.5 4 :136 3:328 CAM : 65 : 3 Mean : 6.4 Mean : 6.0 5 : 55 NAs 3rd Qu.: 7.0 3rd Qu.: 7.0 7 :157 Max. : 8.0 Max. : 7.0 8 : 74 :902.0 NAs :918.0 NAs: 12 NAs sexo T.TOTALP T.QUIRUR edad 0 :329 Min. : 900 Min. : 600 Min. : 4.00 1 :590 1st Qu.: 6060 1st Qu.: 2640 1st Qu.: 31.00 Median : 8790 Median : 3600 Median : 43.00 NAs: 3 Mean : 9881 Mean : 3903 Mean : 43.48 3rd Qu.:12420 3rd Qu.: 4860 3rd Qu.: 56.00 Max. :35160 Max. :16200 Max. : 84.00 NAs :194.00

t2 0 : 11 1 : 59 2 :691 NAs:161

s2 0 : 3 1 :237 2 :522 NAs:160

asa 1:555 2:332 3: 35

En el resumen anterior vemos que cuando se trata de una variable categrica o nos muestra los conteos asociados a cada uno de los valores posibles (si hay muchas categoras solo pone algunas y las dems las agrupa en una ultima categora). En a las variables numricas saca unas descriptivas numricas. Observemos la descriptiva e e numrica de T.TOTALP e > summary(T.TOTALP) Min. 1st Qu. 900 6060 Median 8790 Mean 3rd Qu. 9881 12420 Max. 35160

Nos aparece el mnimo, el primer cuartil (o percentil 0,25), la mediana, la media, el tercer cuartil (o percentil 0,75) y el mximo de las observaciones. a Para una variable categrica podemos pedirle una tabla de frecuencias. o 2

> table(tipoanes)

tipoanes General 746

Plexo 108

CAM 65

La tabla anterior es algo parca en su presentacin. Si queremos un diagrama de o barras (que es lo mismo pero en dibujo) lo podemos conseguir haciendo

> barplot(table(tipoanes))

100

200

300

400

500

600

700

General

Plexo

CAM

Repetimos las tablas y los diagramas de barras para el resto de variables catego ricas.

> table(intensidad)

intensidad 1 2 3 168 426 328

> barplot(table(intensidad)) 3

100

200

300

400

> table(especialidad)

especialidad 1 2 4 5 7 325 163 136 55 157

8 74

> barplot(table(especialidad), names.arg = c("Gine", "Cir. Gen.", + "ORL", "Estoma", "COT", "Uro")) 4

50

100

150

200

250

300

Gine

Cir. Gen.

ORL

Estoma

COT

Uro

En la variable asa (y para no aburrirnos ms con los diagramas de barras) susa tituimos un diagrama de barras por un diagrama de sectores.

> table(asa)

asa 1 2 555 332

3 35

> pie(table(asa), labels = c("I", "II", "III")) 5

III

II

Cuando consideramos una variable numrica hay dos tipos de representaciones e que son robustas y sencillas de interpretar. Son el diagrama de cajas y el diagrama de tallo y hojas. El primero de ellos se obtiene con > boxplot(T.QUIRUR/60)

50

100

150

200

250

Observemos que en el diagrama de cajas hemos expresado los tiempos quirrgicos u en minutos. La variable intensidad es una variable ordinal que expresa el grado de agresin que supone la intervencin quirrgica. Para lgico comparar grcamente o o u o a los tiempos quirrgicos teniendo en consideracin la intensidad de la intervencin. u o o > boxplot(T.QUIRUR/60 ~ intensidad)

50

100

150

200

250

Y nalmente consideremos un diagrama de tallo y hojas para la misma variable. > stem(T.QUIRUR/60) The decimal point is 1 digit(s) to the right of the | 0 2 4 6 8 10 12 14 16 18 20 22 24 26 | | | | | | | | | | | | | | 0256667889999 00000122333445555555555677788888999999000000000000000001111222222222+82 00000000000000000000000011111111111122222222233333334444444444555555+183 00000000000000000000000000111111111122222222222333333334444444444444+154 00000000000000011111111111222222222333333344444445555555555555666666+58 00000000001122233333344444555566667777788888999900000112235555778899 000001134555566680014458 23489039 0252 09 55

0 7

Y yo creo que como anlisis descriptivo inicial ya est ms que bien. a a a Una versin extendida de la nota se puede ver en o http: // www. uv. es/ ayala/ DOCENCIA/ ad/ PDF/ notaR150. pdf y el cdigo utilio zado aparece en http: // www. uv. es/ ayala/ DOCENCIA/ ad/ Rcode/ notaR150_ wc. R

2.2.

Verosimilitud

Sea y = (y1 , . . . , yn ) una realizacin del vector aleatorio Y = (Y1 , . . . , Yn ). Es o habitual asumir que Y tiene una funcin de densidad conjunta f en una cierta familia o F. Para una funcin dada f , el valor f (y) nos muestra cmo var la densidad dentro o o a del espacio muestral de valores posibles de y. Y viceversa, si consideramos unos datos y y lo que hacemos variar es la funcin de densidad entonces estamos viendo cmo o o de veros mil es cada una de las funciones dados los datos y. Esta funcin recibe el o nombre de verosimilitud de f dados los datos y y se suele denotar como V erosimilitud[f ; y] = L(f ; y) = f (y). (2.1)

Con frecuenica, es conveniente trabajar con el logaritmo natural de la funcin ano terior y hablaremos de la log-verosimilitud. l[f ; y] = log f (y). (2.2)

Una simplicacin adicional (que es habitual en las aplicaciones) supone que la o funcin de densidad f pertenece a una familia paramtrica F, esto es, cada elemento o e de la familia es conocido completamente salvo un n mero nito de parmetros u a = (1 , . . . , p ) de modo que denotaremos f (y; ) o fY (y; ). Al conjunto de valores posibles de se le llama espacio paramtrico y lo denotaremos por . En este e caso, la logverosimilitud es una funcin de y denotaremos o V erosimilitud[; y] = l(; y) = log f (y; ). 8 (2.3)

Supongamos una transformacin 1-1 de Y a Z, Z = g(Y ). Las densidades de o ambos vectores se relacionan seg n la siguiente relacin u o fZ (z) = fY (y) donde
y z

y , z

es el jacobiano de la transformacin de z a y. Se tiene la siguiente relacin o o LZ (; z) = y LY (; y). z

entre las verosimilitudes

Esto sugiere que es mejor trabajar con el cociente de las verosimilitudes para dos vectores de parmetros 1 y 2 en lugar de los valores aislados. a Si asumimos que los distintos Y1 , . . . , Yn son independientes entonces
n

LY (; y) = fY (y) =
i=1

fYi (yi ),

y ly (; y) =

log fYi (yi ) =


i=1 i=1

LYi (; yi ).

Veamos algunos ejemplos de verosimilitud. Ejemplo 1 (Pruebas Bernoulli) Y1 , . . . , Yn son independientes y con la misma distribucin (i.i.d.) P (Yi = yi ) = yi (1 )1yi y o L(; y) =
Pn
i=1

yi

(1 )n

Pn

i=1

yi

Ejemplo 2 (Nmero de xitos en n pruebas Bernoulli) Nuestros datos son u e ahora el nmero total de xitos en un nmero dado de pruebas de Bernoulli, r. Enu e u tonces la variable correspondiente R tiene una distribucin binomial con n pruebas o y una probabilidad de xito . La verosimilitud viene dada por e L(; r) = n r (1 )nr r

Ejemplo 3 (Muestreo Bernoulli inverso) Nuestros datos son ahora el nmero u total de pruebas necesarias para alcanzar un nmero previamente especicado de u xitos. La variable aleatoria correspondiente N tendr una distribucin binomial e a o negativa con r xitos y una probabilidad de xito . La funcin de verosimilitud e e o correspondiente viene dada por L(; n) = n1 r (1 )nr r1

Consideremos los tres ejemplos anteriores 1, 2 y 3. Si consideramos dos valores del parmetro 1 y 2 entonces el cociente de las verosimilitudes calculados en ambos a valores tiene el mismo valor en los tres ejemplos.

2.3.

Estimacin o

Denotamos por el espacio formado por los valores que puede tomar o espacio paramtrico. Un estimador del parmetros o vector paramtrico es cualquier e a e funcin de la muestra X1 , . . . , Xn que toma valores en el espacio paramtrico. o e 9

Si (X1 , . . . , Xn ) es un estimador del parmetro entonces se dene el error a cuadrtico medio como a M SE() = E[(X1 , . . . , Xn ) ]2 (2.4)

En el caso en que se verique que E(X1 , . . . , Xn ) = = , es decir, que el estimador sea insesgado entonces: M SE() = E[(X1 , . . . , Xn ) ]2 = E[(X1 , . . . , Xn ) ]]2 = var(). Y el error cuadrtico medio no es ms que la varianza del estimador. a a Consideremos la siguiente cadena de igualdades. Denotamos M SE() = E[ ]2 = E[ + ]2 = E[ ]2 + [ ]2 (2.5)

La diferencia entre la media del estimador y el parmetro, , recibe el nombre a de sesgo. Finalmente lo que nos dice la ecuacin anterior es que el error cuadrtico o a medio M SE() lo podemos expresar como la suma de la varianza del estimador, E[ ]2 , ms el sesgo al cuadrado, [ ]2 . a A la ra cuadrada de la varianza de un estimador, es decir, a su desviacin z o t pica o estndar se le llama error estndar. La expresin error estndar se usa a a o a en ocasiones indistintamente para referirse o bien dicha desviacin t o pica o bien al estimador de la misma.

2.3.1.

Estimacin insesgada de media y varianza o

Dada una muestra Y1 , . . . , Yn de una variable. Un estimador habitualmente utilizado para estimar = EYi es la media muestral dada por 1 Y = n Notemos que E Y = E[ 1 n
n n

Yi .
i=1 n n

(2.6)

Yi ] =
i=1

1 n

EYi =
i=1

1 n

= .
i=1

En denitiva, la media muestral es un estimador que no tiene ning n sesgo cuando u estima la media de Yi (la media poblacional) o, lo que es lo mismo, es un estimador insesgado. Para estimar de un modo insesgado la varianza 2 a partir de una muestra Y1 , . . . , Yn se utiliza la varianza muestral dada por S2 = 1 n1
n i=1

(Yi Y )2 .

(2.7)

La razn de la divisin por n 1 en lugar de dividir por n viene de las siguientes o o igualdades.
n

E
i=1

(Yi Y )2 =
n n

E
i=1

[(Yi ) (Y )2 )]2 =

i=1

E(Yi )2 nE(Y )2 ,

(2.8)

pero E(Yi )2 = 2 y E(Y )2 = var(Y ) = 2 /n. En consecuencia, E 2 (Yi Y )2 = n 2 = n 2 2 = (n 1) 2 , n i=1 10


n

de donde, ES 2 = E
2 2

1 n1

n i=1

(Yi Y )2 = 2 ,

es decir, S estima la varianza sin sesgo.

2.3.2.

Estimacin insesgada del vector de medias y la matriz o de covarianzas

Ahora consideramos una muestra de un vector de dimensin d, Y1 , . . . , Yn i.i.d. o con vector de medias = EYi y matriz de covarianzas = cov(Yi ). Los estimadores insesgados de y son las versiones multivariantes de la media y varianza muestrales. Si Yi1 . Yi = . . Yip Entonces podemos representar toda la muestra como la siguiente matriz Y11 . . . Y1d Y1 . . . . . . Y = . = . . . . .
Yn

Yn1

. . . Ynd

mientras que los datos observados, la matriz de datos, vendr dada por a y1 y11 . . . y1d . . . . . = . . . y= . . . . yn yn1 . . . ynd El vector de medias muestral viene dado por la siguiente expresin en trminos de o e la matriz Y , n 1 1 Y = Yi = Y 1n . (2.9) n i=1 n siendo 1n el vector n 1 con todos los valores iguales a uno. Tambin denotaremos e Y1 . Y = . . Yp El estimador de la matriz de covarianzas (poblacional) ser la matriz de coa varianzas muestral que tiene en la posicin (j, k) la covarianza muestral entre las o componentes j y k, Sjk = de modo que S11 . S= . . ... . . . S1d . = . . 1 n1
n i=1

(Yij Yj )(Yik Yk ),

Sd1

. . . Sdd

1 n1

n i=1

(Yi Y )(Yi Y ) =

1 Q. n1

11

Es inmediato que E Y = porque componente a componente hemos visto que se verica la igualdad. A partir de los vectores Yi consideramos Xi = Yi de modo que se verica X = X . Se sigue que
n i=1 n n

(Yi Y )(Yi Y ) =

i=1

(Xi X)(Xi X) =

i=1

Xi Xi nX X .

Los vectores X1 , . . . , Xn tienen vector de medias nulo y matriz de covarianzas , la misma que los Yi . En consecuencia, E X X = y
n

EQ =
i=1

cov(Yi ) n cov(Y ) = n n cov(Y ) = n n

= (n 1). n

Tenemos pues que S es un estimador insesgado de la matriz . Finalmente, si denotamos por rjk el coeciente de correlacin entre las variables o j y k, es decir, rjk =
n i=1 (Yij n i=1 (Yij

Yj )2

Yj )(Yik Yk )
n i=1 (Yik

Yk )2

Sjk Sjj Skk

(2.10)

Denotaremos por R la matriz de correlaciones muestrales R = [rjk ].

2.4.

Estimador mximo veros a mil

El mtodo de estimacin que vamos a utilizar en este curso el mtodo de e o e mxima verosimilitud. El estimador mximo veros a a mil de , que denotaremos por , se obtienen mximizando la funcin de verosimilitud o, equivalentemente, a o la transformacin montona de dicha funcin que es la funcin de logverosimilitud. o o o o Utilizaremos para denotar el estimador mximo veros a mil la notacin inglesa MLE. o L() = mx L(), a

(2.11)

o tambin e

= argmax L(),
Pn
i=1

(2.12)
xi n

Ejemplo 4 (Bernoulli) Se puede comprobar sin dicultad que p =

Una propiedad importante de los estimadores mximo veros a miles consiste en que si = f () siendo f una biyeccin entonces el estimador mximo veros o a mil de es verica que = f (). (2.13) Ejemplo 5 (Normal) En este caso se comprueba que = Xn y que 2 = n1 S 2 = n n 1 n )2 . Teniendo en que cuenta la propiedad enunciada en 2.13 tendrei=1 (Xi X n
n1 2 n S .

mos que =

En muchas situaciones la funcin L() es cncava y el estimador mximo veo o a ros mil es la solucin de las ecuaciones de verosimilitud L( = 0. Si cov() o entonces, para un tama o muestral grande y denota la matriz de covarianzas de n bajo ciertas condiciones de regularidad (ver [? ], pgina 364), se verica que cov() a es la inversa de la matriz de informacin cuyo elemento (j, k) viene dado por o E 2 l() j k 12 (2.14)

Notemos que el error estndar de j ser el elemento que ocupa la posicin (j, j) a a o en la inversa de la matriz de informacin. Cuanto mayor es la curvatura de la o logverosimilitud menores sern los errores estndar. La racionalidad que hay detrs a a a de esto es que si la curvatura es mayor entonces la logverosimilitud cae rpidamente a cuando el vector se aleja de . En resumen, es de esperar que est ms prximo e a o a . Ejemplo 6 (Binomial) Supongamos que una muestra en una poblacin nita y o consideremos como valor observado el nmero de xitos. Entonces la verosimilitud u e sera n y L(p) = p (1 p)ny , (2.15) y y la logverosimilitud viene dada como l(p) = log n + y log p + (n y) log(1 p), y (2.16)

La ecuacin de verosimilitud ser o a y ny y np l(p) = = . p p 1p p(1 p) (2.17)

a o Igualando a cero tenemos que la solucin es p = n que no es ms que la proporcin o y muestral de xitos en las n pruebas. La varianza as otica ser e nt a E n y ny 2 l(p) =E 2 + = . 2 2 p p (1 p) p(1 p) (2.18)

En consecuencia asintticamente p tiene varianza p(1p) lo cual era de prever pues o n si consideramos la variable Y que nos da el n mero de xitos entonces sabemos que u e EY = np y que var(Y ) = np(1 p).

2.5.

Contraste de hiptesis o

Genricamente vamos a considerar situaciones en donde particionamos el espacio e paramtrico en dos conjuntos 0 y 1 , es decir, 0 1 = (son disjuntos) y e y 0 1 = (cubren todo el espacio paramtrico). Consideramos el contraste de e hiptesis siguiente. o H0 : 0 H1 : 1 (2.19) (2.20)

Basndonos en una muestra aleatoria X1 , . . . , Xn hemos de tomar una decisin. a o Las decisiones a tomar son una entre dos posibles: (i) Rechazar la hiptesis nula o o bien (ii) no rechazar la hiptesis nula. Notemos que, una vez hemos tomado una o decisin, podemos tener dos posibles tipos de error como recoge la siguiente tabla. o En las columnas indicamos la realidad mientras que en las las indicamos la decisin o que tomamos. H0 Error tipo I H1 Error tipo II

Rechazamos H0 No rechazamos H0

Supongamos que Rn es el conjunto de valores que puede tomar el vector aleatorio (X1 , . . . , Xn ). Entonces el contraste de hiptesis se basa en tomar un estad o stico o 13

funcin de la muestra que denotamos (X1 , . . . , Xn ) de modo que si (X1 , . . . , Xn ) o C entonces rechazamos la hiptesis nula mientras que si (X1 , . . . , Xn ) C entonces o / no rechazamos la hiptesis nula. Notemos que simplemente estamos particionando o el espacio muestral (que suponemos) Rn en dos partes, C y C c , de modo que tomamos una decisin basndonos en si el estad o a stico est en C o bien est en el a a complementario de C. Al conjunto C se le suele llamar la regin cr o tica. La funcin o potencia se dene como () = P ( C|). (2.21)

2.5.1.

Test del cociente de verosimilitudes

El cociente de verosimilitudes para contrastar estas hiptesis se dene como o = mx0 L() a mx L() a (2.22)

Es razonable pensar que en la medida en que tome valores menores entonces la hiptesis alternativa sea ms plausible que la hiptesis nula y por lo tanto rechacemos o a o la hiptesis nula. Realmente se suele trabajar con 2 log pues bajo la hiptesis o o nula tiene una distribucin asinttica ji-cuadrado donde el n mero de grados de lio o u bertad es la diferencia de las dimensiones de los espacios paramtricos = 0 1 e a y 0 . Si denotamos L0 = mx0 L() y L1 = mx L() entonces = L0 y a L1 2 log = 2 log L0 = 2(l0 l1 ) L1 (2.23)

siendo l0 y l1 los logaritmos de L0 y L1 respectivamente que tambin corresponden e con los mximos de la logverosimilitud sobre 0 y sobre . a

2.5.2.

Test de Wald

Supongamos que el es un parmetro y denota su estimador mximo veros a a mil. Supongamos que queremos contrastar las siguientes hiptesis: o H0 : = 0 , H1 : = 0 . (2.24) (2.25)

Denotamos por SE() el error estndar bajo la hiptesis alternativa de . Entonces a o el estad stico 0 z= (2.26) SE() tiene, bajo la hiptesis nula, aproximadamente una distribucin normal estndar, o o a z N (0, 1). Este tipo de estad sticos donde se utiliza el error estndar del estimador a bajo la hiptesis alternativa recibe el nombre de estadstico de Wald. o Supongamos que es un vector de parmetros y queremos contrastar las hiptea o sis dadas en 2.24. La versin multivariante del estad o stico dado en 2.26 viene dada por W = ( 0 ) [cov()]1 ( 0 ), (2.27) donde cov() se estima como la matriz de informacin observada en el MLE . La o distribucin asinttica de W bajo la hiptesis nula es una distribucin ji-cuadrado o o o o donde el n mero de grados de libertad coincide con el n mero de parmetros no u u a redundantes en . 14

2.5.3.

Intervalos de conanza

Empezamos recordando el concepto de intervalo de conanza con un ejemplo muy conocido como es la estimacin de la media en poblaciones normales. o Ejemplo 7 (Intervalo de conanza para la media de una normal) Vemoslo a con un ejemplo y luego planteamos la situacin ms general. Tenemos una muestra o a aleatoria X1 , . . . , Xn i.i.d. tales que Xi N (, 2). Entonces es conocido que Xn tn1 . S/ n

(2.28)

Vemos cmo Xnn depende tanto de la muestra que conocemos como de un pao S/ rmetro (la media ) que desconocemos. Fijamos un valor de (habitualmente a tomaremos = 0,05) y elegimos un valor tn1,1/2 tal que

P (tn1,1/2

Xn tn1,1/2 ) = 1 . S/ n

(2.29)

La ecuacin anterior la podemos reescribir como o S S P (Xn tn1,1/2 Xn + tn1,1/2 ) = 1 . n n (2.30)

Tenemos una muestra aleatoria X1 , . . . , Xn y por lo tanto tenemos un intervalo S S aleatorio dado por [Xn tn1,1/2 n , Xn +tn1,1/2 n ]. Este intervalo tiene una probabilidad de 1 de contener a la verdadera media. Tomemos ahora la muestra y consideremos no los valores aleatorios de Xn y de S 2 sino los valores observados s s xn y s. Tenemos ahora un intervalo [n tn1,1/2 n , xn + tn1,1/2 n ] jo. Es x posible que est en este intervalo y es posible que no lo est. Sabemos que antes e e de tomar la muestra tenamos una probabilidad de 1 de contener a la verdadera media pero despus de tomar la muestra tenemos una conanza de 1 de contener e s s a la verdadera media. Al intervalo [n tn1,1/2 n , xn +tn1,1/2 n ] se le llama x intervalo de conanza para con nivel de conanza 1 . Vamos a ver un planteamiento ms general del problema. a Supongamos que tenemos un test para contrastar la hiptesis simple H0 : = 0 o frente a la alternativa H1 : = 0 . Supongamos que elegimos un nivel de signicacin para contrastar las hiptesis anteriores y consideramos el siguiente conjunto o o formado por todos los 0 tales que no rechazamos la hiptesis nula al nivel . Eso te conjunto es un conjunto de conanza al nivel 1 . Cuando el conjunto de conanza es un intervalo hablamos de intervalo de conanza. Supongamos que consideramos el test del cociente de verosimilitudes. Denotemos por 2 (1 ) el percentil 1 de una distribucin ji-cuadrado con k grados de o k libertad. Entonces el intervalo de conanza al nivel 1 ser el conjunto a {0 : 2[l(0 ) l()] < 2 (1 )} k (2.31)

Consideremos ahora un test de Wald. En este caso, el intervalo de conanza de Wald vendr dado por el siguiente conjunto: a {0 : | 0 | < Z1/2 } SE() (2.32)

donde SE() es el error estndar estimado de bajo la hiptesis alternativa. a o 15

16

Cap tulo 3

Anlisis de datos categricos a o


Este tema est dedicado al tratamiento de datos categricos. La referencia biblioa o grca bsica que vamos a seguir es [1]. Asociado a este texto Laura A. Thomson a a ha escrito un manual que reproduce el n merotexto de Agresti con R. Es de un u enorme valor. Se puede conseguir en https://home.comcast.net/~lthompson221/Splusdiscrete2.pdf.

3.1.

Variables respuesta categricas o

Una variable categrica tiene una escala de medida que consiste en una serie de o categor La variable respuesta o dependiente es categrica mientras que las as. o variables explicativas, predictoras o independientes pueden ser de cualquier tipo. Las variables categricas tienen dos tipos de escalas: nominal y ordinal. o Las distribuciones de probabilidad bsicas para el estudio de datos categricos a o son la distribucin binomial, la distribucin multinomial y la distribucin de Poisson. o o o Recordemos que una variable aleatoria tiene una distribucin Bernoulli, Y o Bi(1, ), si P (Y = 1) = , P (Y = 0) = 1 . Si Y1 , . . . , Yn son variables Bernoulli independientes e idnticamente distribuidas e entonces
n

Y =
i=1

Yi Bi(n, ).

La funcin de probabilidad de la suma es o P (Y = y) = n y (1 )ny , y

y decimos que la variable Y tiene una distribucin binomial. o En cuanto a los momentos de estas variables tenemos que E(Yi ) = mientras que var(Yi ) = (1 ) de donde E(Y ) = n, y var(Y ) = n(1 ). Si en lugar de dos resultados en cada prueba suponemos que tenemos c resultados posibles con c > 2 y denotamos por para la prueba i como yij = 1 si la prueba i tiene el resultado en la categor j y cero en otro caso entonces el resultado de la a 1

i-sima prueba la podemos expresar como yi = (yi1 , . . . , yic ) y el n mero de pruebas e u que han dado el resultado j viene dada por
n

nj =
i=1

yij

donde j = 1, . . . , c. El vector aleatorio (n1 , . . . , nc ) se dice que tiene una distribucin o multinomial y lo denotamos como (n1 , . . . , nc ) M ultinomial(n; 1, . . . , c ). Su funcin de probabilidad conjunta viene dada por o p(n1 , . . . , nc ) = n! n n1 . . . c c . n1 ! . . . nc ! 1

Finalmente la distribucin de Poisson o distribucin de los sucesos raros se deo o nota por Y P o(), y tiene por funcin de probabilidad o p(y) = e y con y = 0, 1, . . . y!

Es bien conocido que su media y varianza son iguales a EY = var(Y ) = . Nota de R 3 (notaR501) En R se trabaja con las distribuciones de probabilidad mediante grupos de cuatro funciones. Por ejemplo, supongamos que estamos trabajando con la binomial. Entonces la funcin de probabilidad es dbinom, la funcin o o de distribucin es pbinom, la inversa de la funcin de distribucin que nos da o o o los percentiles es qbinom y, nalmente, podemos generar datos con distribucin bio nomial mediante la funcin rbinom. Consideramos una binomial con 10 pruebas o y una probabilidad de xito en cada prueba de 0,23. Su funcin de probabilidad la e o obtendramos la podemos obtener con > dbinom(0:10, size = 10, prob = 0.23) [1] 7.326680e-02 2.188489e-01 2.941670e-01 2.343149e-01 1.224828e-01 [6] 4.390291e-02 1.092821e-02 1.865298e-03 2.089376e-04 1.386888e-05 [11] 4.142651e-07 su funcin de distribucin con o o > pbinom(0:10, size = 10, prob = 0.23) [1] 0.0732668 0.2921157 0.5862827 0.8205976 0.9430804 0.9869833 0.9979115 [8] 0.9997768 0.9999857 0.9999996 1.0000000 La inversa de la funcin de distribucin, es decir, los percentiles se obtienen con o o > qbinom(0.3, size = 10, prob = 0.23) [1] 2 Y nalmente podemos generar valores con distribucin binomial del siguiente o modo. 2

> rbinom(100, size = 10, prob = 0.23) [1] 1 2 2 2 2 1 1 4 5 2 3 1 5 0 0 3 2 1 4 1 2 0 2 2 3 4 1 4 0 4 5 3 3 3 2 0 3 [38] 0 2 4 3 4 1 4 2 0 4 5 4 2 5 4 1 4 2 1 4 4 3 3 4 4 2 0 2 3 3 1 3 6 2 1 3 3 [75] 1 1 4 2 1 2 3 2 1 3 1 4 3 5 3 4 2 1 2 3 4 1 4 0 2 3 Anlogamente procedemos con la distribucin multinomial. a o > dmultinom(c(3, 7, 2), prob = c(0.1, 0.2, 0.8)) [1] 2.067297e-05 > dmultinom(c(1, 2, 8), prob = c(0.1, 0.2, 0.8)) [1] 0.1164302 > rmultinom(10, size = 12, prob = c(0.1, 0.2, 0.8)) [,1] [,2] [,3] [,4] [,5] [,6] [,7] [,8] [,9] [,10] 0 2 2 1 0 0 1 1 3 0 0 1 1 1 2 3 6 1 1 2 12 9 9 10 10 9 5 10 8 10

[1,] [2,] [3,]

Y nalmente para una distribucin de Poisson. o > dpois(0:30, lambda = 12) [1] [6] [11] [16] [21] [26] [31] 6.144212e-06 1.274064e-02 1.048373e-01 7.239112e-02 9.682032e-03 3.778781e-04 5.498491e-06 7.373055e-05 2.548128e-02 1.143679e-01 5.429334e-02 5.532590e-03 1.744053e-04 4.423833e-04 4.368219e-02 1.143679e-01 3.832471e-02 3.017776e-03 7.751345e-05 1.769533e-03 6.552328e-02 1.055704e-01 2.554981e-02 1.574492e-03 3.322005e-05 5.308599e-03 8.736438e-02 9.048890e-02 1.613672e-02 7.872460e-04 1.374623e-05

> ppois(10:20, lambda = 12) [1] 0.3472294 0.4615973 0.5759652 0.6815356 0.7720245 0.8444157 0.8987090 [8] 0.9370337 0.9625835 0.9787202 0.9884023 > qpois(seq(0.1, 0.9, 0.1), lambda = 12) [1] 8 9 10 11 12 13 14 15 17

> rpois(50, lambda = 12) [1] 12 15 15 9 15 13 12 10 9 21 13 10 18 7 18 11 13 19 7 11 10 12 21 [26] 7 18 16 15 12 8 10 13 11 14 16 11 7 14 14 13 14 13 10 17 17 14 11 Una versin extendida de la nota se puede ver en o http: // www. uv. es/ ayala/ DOCENCIA/ ad/ PDF/ notaR501. pdf y el cdigo utilio zado aparece en http: // www. uv. es/ ayala/ DOCENCIA/ ad/ Rcode/ notaR501_ wc. R En lo que sigue el siguiente resultado es muy importante. 3 8 12 4 12

Teorema 2 Si Y1 , . . . , Yc son variables Poisson independientes con medias 1 , . . . c entonces


c

P (Y1 = n1 . . . , Yn = yn | con

Yi = b) =
i=1

n! n n1 . . . c c n1 ! . . . nc ! 1

i =

i c i=1

En otras palabras, la distribucin conjunta de variables independientes y con diso tribucin Poisson condicionada a la suma total es una multinomial. o

3.2.

Inferencia con la distribucin binomial o

En esta seccin nos ocupamos del estudio de la distribucin binomial, su veroo o similitud y los contrastes bsicos relacionados con ella. Denotamos la probabilidad a de xito por . Si consideramos una prueba Bernoulli entonces la funcin de probae o bilidad es f (y|) = y (1 )1y donde y = 0, 1. Para n pruebas Bernoulli tendremos como funcin de verosimilitud o
n Pn Pn

L(; y) =
i=1

yi (1 )1yi =

i=1

yi

(1 )n

i=1

yi

donde y = (y1 , . . . , yn ). La logverosimilitud es


n n

l(; y) =
i=1

yi log + n

i=1

yi log(1 ).

Estas funciones son nuestro instrumento bsico para el anlisis estad a a stico de este tipo de datos.

3.2.1.

Contraste de hiptesis simples o

Tenemos una moneda (un euro para ms detalles) y pretendemos valorar si es a una moneda correcta. En otras palabras, si las probabilidades de obtener cara o cruz cuando lancemos la moneda son las mismas e igual a 1/2. Interpretando xito e como cara lo que nos planteamos es un contraste simple sobre la probabilidad de xito. En concreto un contraste donde la hiptesis nula es que dicha probabilidad e o vale 1/2 frente a una alternativa de que sea distinta. Formulndolo de un modo ms genrico tenemos el siguiente contraste: a a e H0 : H1 : = 0 = 0 .

Las opciones para constrastar son (como siempre) los test de Wald, el test score y el test del cociente de verosimilitudes. El estad stico de Wald viene dado por zW = 0 = SE 0 , (1 )/n

mientras que el estad stico score es zS = 0 (1 0 )/n 4 0 .

Es preferible el estad stico score pues su distribucin se aproxima ms a la normal. o a El tercero de la terna, el test del cociente de verosimilitudes, adopta la siguiente expresin o ny y + (n y) log 2(L0 L1 ) = 2 y log . n0 n n0 Bajo H0 , el n mero esperado de xitos y fracasos son n0 y n(1 0 ) respectivau e mente. Esto es lo que esperamos pero lo que realmente observamos son y xitos y e n y fracasos. Por ello, la expresin anterior puede expresarse de un modo resumido o como Observado . 2 Observado log Esperado donde la suma se hace sobre las dos categor que tenemos, xitos y fracasos. La as e distribucin asinttica bajo la hiptesis nula de este estdistico o distribucin nula, o o o a o es una ji-cuadrado con un grado de libertad, 2 (1).

3.2.2.

Intervalo de conanza

Una vez hemos visto cmo son los contrastes para la hiptesis simple podeo o mos construir el intervalo de conanza correspondiente como aquellos valores del parmetro para los cuales no rechazamos la correspondiente hiptesis nula simple. a o Fcilmente tenemos que el intervalo de conanza basado en el test de Wald ser a a: {0 : |zW | < z/2 }, o lo que es lo mismo, z/2 (1 ) . n

Este intervalo de conanza no es muy exacto cuando n es peque o sobre todo para n valores de prximos a 0 o a 1. o Si utilizamos el test score entonces los extremos los obtenemos resolviendo las ecuaciones 0 = z/2 . 0 (1 0 )/n La expresin nal es bastante compleja pues tenemos una funcin cuadrtica en 0 . o o a Este intervalo de conanza es ms exacto que el intervalo de Wald. El intervalo de a conanza del cociente de verosimilitudes ser a {0 : 2(L0 L1 ) 2 ()} 1 Podemos construir un intervalo de conanza exacto. En este caso el nivel de conanza (o probabilidad de conanza) es mayor o igual al establecido pero no tenemos asegurada la igualdad. Nota de R 4 (notaR502) Consideramos los datos scoremaster 10.1. Nos jamos en la variable sexo. Es una variable dicotmica. Tenemos una mueso tra de personas que son intervenidas sin ingreso hospitalaria y nos planteamos estimar la fraccin de mujeres (o de hombres equivalentemente). Entendemos como o xito (codicado con 1) ser mujer (no se admiten bromas sobre el tema). Empezamos e con el intervalo de conanza de Wald. Los conteos de hombres y mujeres son > table(sexo) 5

sexo 0 1 329 590 El conteo de mujeres y el total de casos lo podemos obtener como > tsexo = table(sexo) > tsexo[2] 1 590 > sum(tsexo) [1] 919 y nalmente el intervalo de conanza de Wald vendra dado por > library(Hmisc, T) > binconf(x = tsexo[2], n = sum(tsexo), method = "asymptotic") PointEst Lower Upper 0.6420022 0.6110067 0.6729977 El intervalo score para el parmetro de una binomial lo vamos a obtener mediante a dos opciones distintas. La primera opcin sera o > res = prop.test(x = tsexo[2], n = sum(tsexo), conf.level = 0.95, + correct = F) > res$conf.int [1] 0.6104745 0.6723477 attr(,"conf.level") [1] 0.95 mientras que la segunda opcin sera o > library(Hmisc, T) > binconf(x = tsexo[2], n = sum(tsexo), alpha = 0.05, method = "wilson") PointEst Lower Upper 0.6420022 0.6104745 0.6723477 El test exacto lo podemos obtener con > res = binom.test(x = tsexo[2], n = sum(tsexo)) > res$conf.int [1] 0.6100464 0.6730444 attr(,"conf.level") [1] 0.95 Una versin extendida de la nota se puede ver en o http: // www. uv. es/ ayala/ DOCENCIA/ ad/ PDF/ notaR502. pdf y el cdigo utilio zado aparece en http: // www. uv. es/ ayala/ DOCENCIA/ ad/ Rcode/ notaR502_ wc. R 6

3.3.

Inferencia para la multinomial

En una distribucin multinomial los parmetros a estimar son las probabilidades o a de cada una de las categor (1 , . . . , c ). Sin embargo, hemos de tener en cuenta as, que c = 1 c1 i por lo que realmente tenemos c 1 parmetros a estimar. a i=1 Notemos que la verosimilitud es proporcional a
c j=1

j j donde j 0,

j = 1.
j

Fcilmente se comprueba que los estimadores mximo veros a a miles vienen dados por nj j = , n esto es, son las correspondientes frecuencias observadas de cada una de las categor No pod (ni deb ser de otra manera. as. a a)

3.3.1.

Contraste de una multinomial dada

Nos planteamos el contraste de hiptesis simple en donde especicamos una o probabilidad dada para cada categor De un modo ms formal tenemos a. a H0 H1 : j = j0 con j = 1, . . . , c : No H0 .

El primer test a considerar (uno de los procedimientos estad sticos ms antiguos a en uso) es el que se conoce como el test ji-cuadrado de Pearson. La idea es simple. Bajo la hiptesis nula, bajo H0 , esperamos observar de la categor j, j = nj o a casos. Es decir, la frecuencia esperada nula es j . Pero observamos nj , frecuencia observada. Pearson propuso comparar ambas frecuencias, observadas y esperadas, mediante el siguiente estad stico X2 =
j

(nj j )2 = j

(nj nj0 )2 . nj0

Bajo la hiptesis nula H0 y para grandes muestras o distribucin nula asinttica el o o o estad stico tiene una distribucin ji-cuadrado con c 1 grados de libertad o X 2 2 . c1
2 Dados unos datos y un valor observado del estad stico, X0 , el p-valor vendr dado a por 2 p = P (X 2 X0 ).

El cociente de verosimilitudes es

= de modo que

j j0

nj j (nj /n)

, nj . nj0

G2 = 2 log = 2
2

nj log
j

Con el LRT, rechazamos H0 cuando G toma valores grandes. G2 es conocido como el estadstico ji-cuadrado del cociente de verosimilitudes. Su distribucin nula o asinttica ser un ji-cuadrado con c 1 grados de libertad ya que la dimensin del o a o espacio paramtrico es c 1, es decir, e G2 2 . c1 7

Nota de R 5 (notaR503) Todo el mundo utilizada estos datos para ilustrar este test. Pues vamos a usarlos tambin nosotros. Son unos datos de Mendel. Es un e experimento realizado por Mendel. Cruzamos guisantes amarillos con guisantes verdes. El caracter dominante es amarillo. De acuerdo con la teora de la herencia de Mendel 3/4 de los guisantes que obtenemos por cruce deberan de ser amarillos y el cuarto restante debera de ser verde. Se realizaron n = 8023 cruces de los cuales n1 = 6022 son amarillos y n2 = 2001 son verdes. Son consistentes los datos con la teora? Empezamos con el test ji-cuadrado de Pearson. > library(stats) > chisq.test(x = c(6022, 2001), p = c(0.75, 0.25)) Chi-squared test for given probabilities data: c(6022, 2001) X-squared = 0.015, df = 1, p-value = 0.9025 Y tambin consideramos el test del cociente de verosimilitudes e > observadas = c(6022, 2001) > esperadas = 8023 * c(0.75, 0.25) > 1 - pchisq(2 * sum(observadas * log(observadas/esperadas)), df = 1) [1] 0.9025024 Hay que reconocer que le fu muy (demasiado) bien la experimentacin a Mendel. e o Una versin extendida de la nota se puede ver en o http: // www. uv. es/ ayala/ DOCENCIA/ ad/ PDF/ notaR503. pdf y el cdigo utilio zado aparece en http: // www. uv. es/ ayala/ DOCENCIA/ ad/ Rcode/ notaR503_ wc. R

3.4.

Tablas de contingencia

Vamos a estudiar la relacin entre distintas variables categricas. Sin duda, lo o o ms interesante a nivel aplicado. En esta seccin nos ocuparemos de la situacin en a o o que tenemos dos variables categricas. o

3.4.1.

Tablas de contingencia: distribucin conjunta, distrio bucin condicionada e independencia o

Sean X e Y dos variables categricas con I y J categor Un sujeto puede o as. venir clasicado en una de I J categor Dada una muestra podemos construir as. la tabla donde cada la corresponde a una categor de la variable X mientras que a cada columna corresponde a una categor de la variable Y . En la celda o casilla a correspondiente a la la i y la columna j tendremos el conteo de casos que en la muestra vericando que X = i e Y = j, esto es, recogemos el conteo conjunto de las dos variables. Una tabla como la indicada recibe el nombre de tabla de contingencia o tabla de clasicacin cruzada. o Recordemos algunos conceptos bsicos sobre la distribucin conjunta de dos a o variables aleatorias discretas. Lo necesitamos para entender el uso que pretendemos dar a una herramienta puramente descriptiva como es la tabla de contingencia. Dadas las variables X and Y su distribucin conjunta viene dada por o ij = P (X = i, Y = j), 8

Cuadro 3.1: Tablade conteos cruzando el estado del paciente y el resultado del test. Enfermo No enfermo Total Test positivo n11 n21 n+1 Test negativo n11 n22 n+2 Total n1+ n2+ n

con i = 1, . . . , I y j = 1, . . . , J. Las distribuciones marginales son


J J

i+ = P (X = i) =
j=1 I

P (X = i, Y = j) =
j=1 I

ij

+j = P (Y = j) =
i=1

P (X = i, Y = j) =
i=1

ij

El tercer concepto probabil stico bsico en lo que sigue es el de distribucin a o condicionada o condicional. Habitualmente una variable, por ejemplo Y , es una variable respuesta y la otra, X es explicativa o predictora. En esta situacin no tiene o sentido hablar de distribucin conjunta y s de distribucin condicionada de Y a X o o que denotaremos ij P (Y = j|X = i) = j|i = . i+ Las variables X and Y se dicen independientes si ij = i+ +j . En particular, si las variables son independientes entonces la distribucin condicioo nada es igual a la distribucin marginal, es decir, o j|i = +j con j = 1, . . . , J. La denicin usual de variables aleatorios discretas independientes es que la o funcin de probabilidad conjunta es el producto de marginales. Sin embargo, esta o denicin equivale con la que dice que son independientes si la condicionada de una o a otra es igual a la correspondiente marginal. Cundo es ms natural una interprea a tacin o la otra? Si las variables X e Y que estamos estudiando las consideramos o como variables respuesta entonces parece natural utilizar la primera denicin y o hablar de independencia. Sin embargo, si Y es considerada respuesta mientras que X es predictiva entonces hablamos de homogeneidad de las distintas distribuciones condicionadas de Y a los valores posibles de la variable X. Ejemplo 8 Un ejemplo clsico de tabla de contingencia aparece cuando estamos a considerando si un test es capaz de detectar una enfermedad. Entonces la tabla de contingencia sera la que aparece en la tabla 3.3. Si nos planteamos modicar la tabla bsica de los conteos anterior en una tabla a que estime la la distribucin conjunta de las variables X and Y entonces dividio mos cada conteo de cada celda por el total de individuos consideramos en la tabla. Tendramos la siguiente tabla modicada. Si dividimos los conteos por los totales de columna tenemos la distribucin cono dicionada de X a Y . En Medicina hay dos conceptos bsicos que se conocen como sensibilidad y a especicidad. Son unas cantidades que se calculan a partir de las tablas anteriores. 9

Cuadro 3.2: Tabla de proporciones sobre el total cruzando el estado del paciente y el resultado del test. Test positivo Test negativo Total ij Enfermo n11 /n n11 /n n1+ /n No enfermo n21 /n n22 /n n2+ /n Total n+1 /n n+2 /n 1 Cuadro 3.3: Tabla de proporciones sobre el total cruzando el estado del paciente y el resultado del test. j|i Enfermo No enfermo Test positivo n11 /n1+ n21 /n2+ Test negativo n11 /n1+ n22 /n2+ Total 1 1

La sensibilidad es la proporcin de enfermos correctamente diagnsticados o, o o de un modo ms preciso, a 1|1 = P (Y = 1|X = 1). La especicidad es la proporcin de sanos correctamente diagnsticados o o o 2|2 = P (Y = 2|X = 2). Nota de R 6 (notaR540) Utilizamos los datos scoremaster. Vamos a cruzar la intensidad de la intervencin (una medida de lo cruenta que o es la intervencin y que se conoce a priori) con el estado general del enfermo en la o primera llamada que recibe. Empezamos construyendo la tabla de contingencia. > tt0 = table(intensidad, eg1) > tt0 eg1 intensidad 0 1 2 1 5 97 66 2 6 242 178 3 7 206 115 Tambin es natural cruzar por ejemplo la intensidad con el resto de variables de e la primera llamada. Por ejemplo, con el nivel de dolor. > table(intensidad, d1) d1 intensidad 1 2 3

0 1 2 3 62 103 6 139 281 9 159 160

Recuperemos el primer cruce y veamos cmo estimar la distribucin conjunta en o o donde cada conteo lo dividimos por el total de la tabla. > prop.table(tt0) 10

eg1 intensidad 0 1 2 1 0.005422993 0.105206074 0.071583514 2 0.006507592 0.262472885 0.193058568 3 0.007592191 0.223427332 0.124728850 En este caso, la variable intensidad es previa y parece ms natural considerar la a distribucin de la variable que aparece en la columna condicionada a la variable que o aparece en la la. > prop.table(tt0, 1) eg1 intensidad 0 1 2 1 0.02976190 0.57738095 0.39285714 2 0.01408451 0.56807512 0.41784038 3 0.02134146 0.62804878 0.35060976 Una versin extendida de la nota se puede ver en o http: // www. uv. es/ ayala/ DOCENCIA/ ad/ PDF/ notaR540. pdf y el cdigo utilio zado aparece en http: // www. uv. es/ ayala/ DOCENCIA/ ad/ Rcode/ notaR540_ wc. R

3.4.2.

Tipo de muestreo

En cualquier tipo de tratamiento (y de interpretacin del mismo) es bsico plano a tearse cmo se ha obtenido la muestra. Un mismo resultado tiene interpretaciones o diversas. Los tipos de muestreo ms habituales con los que nos vamos a encontrar a se pueden clasicar en los siguientos tipos. Muestreo de Poisson Los conteos Yij de la tabla suponemos que son variables Poisson independientes con medias ij . Muestreo multinomial En este caso jamos el n mero total de elementos que u tenemos en la tabla, n, pero no los totales de la y columna. Muestreo multinomial independiente Ahora jamos los totales de la considerando Y como variable respuesta y X como explicativa. Al jar el total de la lo que tenemos es una muestra de una multinomial donde las distintas categor se corresponden con las distintas columnas. Adems las muestras para as a distintas las de la tabla se supone que se han obtenido independientemente. Como es lgico dependiendo del tipo de muestreo tenemos una verosimilitud distino ta. Si el muestreo es de Poisson entonces la verosimilitud es eij
i j

ijij , nij !

mientras que para un muestreo multinomial la verosimilitud es n!


i j nij ! i j

ijij .

Finalmente si cada la es una muestra de una multinomial independiente, esto es, tenemos un muestreo multinomial independiente y su verosimilitud viene dada por ni+ ! j nij ! 11
ij j|i .

Cuadro 3.4: Enfermedad venrea e Con preservativo Sin preservativo No enfermedad

Cuadro 3.5: 1 2 1 1|1 1|2 2 2|1 2|2

Cundo nos encontramos en una u otra situacin? Vamos a plantearnos lo a o que ser una tabla de contingencia antes de tener datos y, por lo tanto, sin poder a construirla. Supongamos que pretendemos estudiar la relacin entre contraer eno fermedades venreas o no y utilizar el preservativo en las relaciones sexuales. Para e cada persona se le pregunta se usa el preservativo en sus relaciones y si ha contraido alguna enfermedad venrea en el ultimo a o. No tenemos datos y por lo tanto e n empezamos con una tabla vac a. Nuestro estudio que dar lugar a los conteos que rellenarn las celdas podemos a a plantearlo de distintas formas. Si no jamos el total de la tabla y nos limitamos a muestrear en el colectivo entonces tenemos conteos de Poisson. Si se toma una muestra de 300 personas en los ultimos tres meses en un instituto de secundaria en tonces tenemos un muestreo multinomial. Finalmente podemos tomar una muestra de 150 personas que han contra una enfermedad venrea y otra de 150 que no la do e han contra y luego observar sus hbitos de uso del preservativo. do a

3.4.3.

Comparacin de dos proporciones o

Muchos estudios se dise an para comparar grupos basndonos en una respuesta n a binaria, Y . En este caso la interpretacin que tiene sentido es pensar en la distribuo cin condicionada de Y a la variable X (las). O viceversa. Con dos grupos tenemos o una tabla de contingencia 2 2 como la que sigue. 1|i 2|i = i = 1 1|i = 1 i

Queremos comparar 1 con 2 . Cmo comparamos? Podemos estudiar la difeo rencia de las proporciones 1 2 , Cuadro 3.6: Grupo 1 Grupo 2 Exito 1|1 1|2 Fracaso 2|1 2|2

12

Cuadro 3.7: Grupo 1 Grupo 2 Exito 1 2 Fracaso 1 1 1 2

o el riesgo relativo,

1 , 2

o bien el cociente de odds (odds ratio) = 1 /(1 1 ) . 2 /(1 2 )

3.4.4.

Odds y odds ratio


. 1

Si es la probabilidad de xito entonces los odds se denen como e = Equivalentemente

. +1 En una tabla 2 2 tenemos los odds en la la i i i = . 1 i = El cociente de los odds de las dos las ser el odds ratio. a = Se tiene fcilmente que a = 1 /(1 1 ) . 2 /(1 2 ) 11 22 . 12 21

Por ello tambin se le llama el cociente de los productos cruzados. e El odds ratio tiene las siguientes propiedades fundamentales. 1. Puede ser cualquier valor positivo. 2. = 1 signica que no hay asociacin entre X e Y . o 3. Valores de alejados de 1 indican una asociacin mayor. o 4. Se suele trabajar con log pues entonces el valor que tenemos es simtrico e respecto a cero. 5. El odds ratio no cambia cuando intercambiamos las y columnas. Nota de R 7 (notaR504) Los datos se reeren al efecto de la aspirina en la prevencin del infarto. o > x = c(104, 189) > n = c(11037, 11034) > prop.test(x, n) 13

2-sample test for equality of proportions with continuity correction data: x out of n X-squared = 24.4291, df = 1, p-value = 7.71e-07 alternative hypothesis: two.sided 95 percent confidence interval: -0.010814914 -0.004597134 sample estimates: prop 1 prop 2 0.00942285 0.01712887 > asp.ataque = prop.test(x, n) > attributes(asp.ataque) names [1] "statistic" [6] "conf.int" class [1] "htest" > prop.test(x, n)$p.value [1] 7.709708e-07 > asp.ataque$p.value [1] 7.709708e-07 > prop.test(x, n, alt = "less") 2-sample test for equality of proportions with continuity correction data: x out of n X-squared = 24.4291, df = 1, p-value = 3.855e-07 alternative hypothesis: less 95 percent confidence interval: -1.000000000 -0.005082393 sample estimates: prop 1 prop 2 0.00942285 0.01712887 > asp.ataque$estimate prop 1 prop 2 0.00942285 0.01712887 Veamos cul es la diferencia de proporciones, a > asp.ataque$estimate[2] - asp.ataque$estimate[1] prop 2 0.007706024 el riesgo relativo, asp.ataqueestimate[2]/asp.ataqueestimate[1] y el odds ratio 14 "parameter" "p.value" "alternative" "method" "estimate" "data.name" "null.value"

Cuadro 3.8: Procesamientos por asesinatos m ltiple sen Florida entre 1976 y 1987 u V ctima Blanco Negro Acusado Blanco Negro Blanco Negro Blanco Negro Pena de muerte Si No 53 11 0 4 53 15 414 37 16 139 430 176 % S 11,3 22,9 0,0 2,8 11,0 7,9

Total

Cuadro 3.9: Procesamientos por asesinatos m ltiple sen Florida entre 1976 y 1987 u V ctima vs acusado Blanco Negro Blanco 467 48 Negro 16 143 V ctima vs veredicto Si No Blanco 64 451 Negro 4 155

x[2]*(n[1]-x[1])/(x[1]*(n[2]-x[2])) Una versin extendida de la nota se puede ver en o http: // www. uv. es/ ayala/ DOCENCIA/ ad/ PDF/ notaR504. pdf y el cdigo utilio zado aparece en http: // www. uv. es/ ayala/ DOCENCIA/ ad/ Rcode/ notaR504_ wc. R

3.5.

Asociacin parcial en tablas 22 estraticadas o

Cuando estudiamos el efecto de X sobre Y debemos de controlar las covariables que pueden inuir en la relacin. Lo mejor es mantener las covariables relevano tes constantes. Un efecto de X sobre Y puede representar un efecto de la (o las) covariables sobre las variables X e Y . Esto no es fcil en estudios observacionales. a Se condena a muerte ms a los blancos que a los negros en Estados Unidos. En a el pa de la igualdad se discrimina a los blancos. Consideramos como covariable la s raza de la v ctima. En el pa de la igualdad se condena ms a los negros. s a Por qu? La explicacin tiene que venir de la asociacin existente entre la raza e o o de la v ctima y las variables que cruzamos marginalmente. Hay una gran asociacin o entre raza de v ctima y raza del acusado (odds ratio de 87). Los blancos tienden a matar ms a blancos. Si matas a un blanco tienes una a mayor probabilidad de que te condenen. Esto es un ejemplo de la paradoja de Simpson (1951). Nota de R 8 (notaR507) Esta nota es una ilustracin de la paradoja de Simpson o donde las asociaciones parciales pueden no coincidir con la asociacin global. o Cargamos el paquete vcd [? ] > library(vcd) Construmos la tabla con los conteos. 15

> > > > + > + > > >

raza.victima = c("blanco", "negro") raza.agresor = raza.victima pena.muerte = c("si", "no") etiquetasdatos = list(agresor = raza.agresor, muerte = pena.muerte, victima = raza.victima) datos.florida = expand.grid(agresor = raza.agresor, muerte = pena.muerte, victima = raza.victima) conteos = c(53, 11, 414, 37, 0, 4, 16, 139) datos.florida = cbind(datos.florida, count = conteos) xtabs(conteos ~ agresor + muerte + victima, data = datos.florida)

, , victima = blanco muerte agresor si no blanco 53 414 negro 11 37 , , victima = negro muerte agresor si no blanco 0 16 negro 4 139 Veamos grcamente los datos. a > temp = xtabs(conteos ~ agresor + muerte + victima, data = datos.florida) > plot(temp) Aqu tenemos los logaritmos de los odds ratio y los test de si podemos conside rarlos nulos. > summary(oddsratio(temp)) Log Odds Ratio Std. Error blanco -0.84255 0.36705 negro -0.06252 1.51327 --Signif. codes: 0 *** 0.001 ** z value Pr(>|z|) -2.2955 0.01085 * -0.0413 0.48352 0.01 * 0.05 . 0.1

Y los intervalos de conanza correspondientes. > confint(oddsratio(temp)) lwr upr blanco -1.561961 -0.1231423 negro -3.028482 2.9034412 Una versin extendida de la nota se puede ver en o http: // www. uv. es/ ayala/ DOCENCIA/ ad/ PDF/ notaR507. pdf y el cdigo utilio zado aparece en http: // www. uv. es/ ayala/ DOCENCIA/ ad/ Rcode/ notaR507_ wc. R 16

3.6.
3.6.1.

Inferencia en tablas de contingencia


Intervalos de conanza para parmetros de asociacin a o

Intervalo para los odds ratio El estimador del odds ratio es n11 n22 . = n12 n21 El estimador puede ser 0, innito o no estar denido () dependiendo de los conteos. Por ello no existe ni la media ni la varianza de ni de log . Una posibilidad es trabajar con (n11 + 0,5)(n22 + 0,5) = (n12 + 0,5)(n21 + 0,5) y con log . Un estimacin del error estndar de es o a (log ) = 1 1 1 1 + + + n11 n12 n21 n22 log z/2 (log ). Tomando las exponenciales en los extremos tenemos el correspondiente intervalo para log . El test es algo conservador (la probabilidad de cubrimiento es algo mayor que el nivel nominal). Estudio sueco sobre el uso de la aspirina y el infarto de miocardio. Infarto de miocardio Si No 28 656 18 658
1/2

El intervalo de conanza de Wald ser a:

Placebo Aspirina

Total 684 656

Intervalo de conanza para la diferencia de proporciones Suponemos que tenemos muestras de binomiales independientes. En el grupo i tenemos Yi Bi(ni , i ). El estimador de la i-sima proporcin es e o i = Yi /ni , de modo que la diferencia entre las proporciones estimadas verica E(1 2 ) = 1 2 y el error estndar es a (1 2 ) = 1 (1 1 ) 2 (1 2 ) + n1 n2
1/2

Estimamos sustituyendo i por i . El intervalo de conanza de Wald ser a: 1 2 z/2 (1 2 ). Usualmente la probabilidad de cubrimiento es menor que el coeciente de conanza nominal. Especialmente para valores de 1 y 2 prximos a 0 o 1. o 17

Intervalo de conanza para el riesgo relativo El riesgo relativo muestral viene dado por r= 1 2

Hay una convergencia a la normalidad ms rpida trabajando en la escala logar a a tmica. El error estndar asinttico de log r es a o (log r) = 1 2 1 1 + n1 1 n2 2
1/2

Es algo conservador (probabilidad de cubrimiento mayor que el nivel de conanza nominal). El intervalo de conanza de Wald para log 1 /2 es log r z/2

3.6.2.

Contraste de independencia en tablas de doble entrada


H0 : ij H0 : ij = = i+ +j i, j

Nos planteamos el contraste de:

i+ +j para alg n i, j u

Los tests que vamos a considerar se pueden aplicar tanto para muestreo multinomial (con I J categor as) como para muestreo multinomial independiente (para las distintas las). En el primer caso contrastamos independencia y en el segundo homogeneidad. El primer test que vamos a considerar es el test ji-cuadrado. Es el test clsico a propuesto por K. Pearson. Bajo H0 , Enij = ij = ni+ +j . razonablemente buena si las frecuencias esperadas son mayores que 1 y la mayor parte son mayores que 5. Si nos los podemos usar hay que utilizar mtodos para e muestras peque as. n

3.7.
3.7.1.

Ms all del test ji-cuadrado a a


Residuos

Vamos a comparar las frecuencias observadas con las esperadas. Notemos que, para muestreo de Poisson, (nij ij ) = ij . a La desviacin estndar de nij ij es menor que ij pero todav proporcional a o a este valor. Denimos el residuo de Pearson como eij = nij ij . ij

En particular tenemos que el estad stico X 2 de Pearson es igual a la suma de los cuadrados de los residuos de Pearson. X2 =
i j

e2 . ij 18

Comparar estos residuos con los percentiles normales da una visin conservadora. o Se denen los residuos de Pearson estandarizados como nij ij ij (1 i+ )(1 +j ) que s tienen una distribucin normal estndar. o a Podemos comparar los residuos de Pearson estandarizados con los percentiles de la normal. Valores superiores (en mdulo) a 2 o 3 indican falta de ajuste. o
1/2

3.8.
3.8.1.

Test de independencia con muestras peque as n


Test exacto de Fisher para tablas 2 2

Todos los procedimientos vistos hasta ahora se basan en distribuciones asinto ticas. Si tenemos muestras grandes no hay problemas. Y con muestras peque as? n Rezar es una buena opcin. Siempre lo es. La otra es un test exacto. o Consideramos una tabla 2 2. La hiptesis nula es de independencia. Condio cionamos a los totales marginales de la y columna. Solamente nos queda libre un conteo (por ejemplo, n11 ) y p(t) = P (n11 = t) = donde los valores posibles son m n11 m+ con m = mx{0, n1+ + n+1 n} y m+ = m a n{n1+ , n+1 }. Queremos contrastar independencia. En tablas 2 2 lo podemos formular como H0 : = 1 frente a (alternativa unilateral) H1 : > 1 Para el test anterior, si t0 es el valor observado de n11 , entonces el p-valor ser a P (n11 t0 ) Primer servicio Ejemplo 9 El ejemplo del t Leche e T e Total Prediccin primer servicio o Leche T e 3 1 1 3 4 4 Total 4 4
n1+ t n2+ n+1 t n n+1

Ser ms extrema la tabla con n11 = 4. El p-valor ser a a a P (n11 = 3) + P (n11 = 4) = 0,243 Estamos ordenando las tablas de acuerdo con n11 . Podr amos ordenarlas seg n u el odds ratio o la diferencia de las proporciones y obtenemos el mismo test. Esto no ser cierto para test bilateral. a 19

3.9.

Test exacto de Fisher y alternativa bilateral

La denicin de p-valor depende de cmo ordenamos las tablas. Lo que suele ir o o programado en software es (si p(t) = P (n11 = t)) p = P (p(n11 ) p(t0 )) Sumamos la probabilidad de todas aquellas tablas que son tan probables o menos que la tabla observada. Otra opcin es o p = P |n11 E(n11 )| |t0 E(n11 )| teniendo en cuenta que para la hipergeomtrica e E(n11 ) = n1+ n+1 /n Este procedimiento equivale con
2 p = P (X 2 X0 ) 2 siendo X0 el valor observado de X 2 .

20

Cap tulo 4

Regresin o
El problema que se trata en este tema es bsico. Estudiar relaciones entre una a variable que llamaremos variable respuesta y una (o ms de una) variable que llaa maremos variables predictoras. Tambin se utilizan las denominaciones de variable e dependiente para la variable respuesta y variables independientes en lugar en predictoras. Si denotamos a la variable respuesta por Y (al valor observado lo denotaremos por y) y a la variable predictora por X nuestro problema es intentar conocer el valor de Y cuando conocemos el valor de la variable X. Nota de R 9 (notaR100) El primer conjunto de datos fueron publicados por Fisher[6]. El chero contiene tres variables correspondientes al peso del corazn, el peso del o cuerpo y el sexo de una muestra de gatos. Tenemos 47 hembras y de 97 machos. > library(MASS) > attach(cats) > names(cats) Empezamos representando el peso del corazn frente al peso del cuerpo para las o hembras. > plot(Bwt[Sex == "F"], Hwt[Sex == "F"]) Repetimos el dibujo para los machos. > plot(Bwt[Sex == "M"], Hwt[Sex == "M"]) Nuestro problema es intentar predecir el peso del corazn a partir del peso del o cuerpo. Adems parece razonable plantearse si esta relacin es similar para machos a o y hembras. Una versin extendida de la nota se puede ver en o http: // www. uv. es/ ayala/ DOCENCIA/ ad/ PDF/ notaR100. pdf y el cdigo utilio zado aparece en http: // www. uv. es/ ayala/ DOCENCIA/ ad/ Rcode/ notaR100_ wc. R Nota de R 10 (notaR101) Tenemos velocidades y tiempos de parada de una serie de vehculos. > require(stats) En abscisas consideramos las velocidades y en ordenadas los tiempos de parada. 1

> plot(cars, xlab = "Speed (mph)", ylab = "Stopping distance (ft)", + las = 1) Podemos predecir de algn modo el tiempo de parada a partir de la velocidad u del vehculo? Una versin extendida de la nota se puede ver en o http: // www. uv. es/ ayala/ DOCENCIA/ ad/ PDF/ notaR101. pdf y el cdigo utilio zado aparece en http: // www. uv. es/ ayala/ DOCENCIA/ ad/ Rcode/ notaR101_ wc. R En este tema utilizamos de un modo importante el paquete faraway [5].

4.1.

Regresin lineal simple o

En todos los ejemplos antes comentados el problema com n es determinar el vau lor de Y a partir del valor de X. Obviamente la respuesta ms simple ser buscar a a una funcin que podemos denotar por f de modo que para un valor dado x simpleo mente calculamos y = f (x). Un poco de imaginacin y conocimiento de la posible o relacin entre x e y podr darnos una idea de qu funcin f buscar. Este planteao an e o miento es de base muy restrictivo. Por qu? Pues en primer lugar porque estamos e asumiendo que, para un valor de x, existe un unico valor de y asociado. Y esto nunca (o casi) es as Un detalle, a veces X es una variable aleatoria que observa. mos simultneamente con Y , en otras ocasiones es un valor que nosotros prejamos a (dosis de medicacin, tratamiento en un problema de diseo de experimentos). Sin o n embargo, desde el punto de vista de la regresin X siempre lo consideramos jo y o estudiamos cmo se comporta Y dado el valor de X = x. Es decir, de la distribucin o o condicionada de Y al valor de X = x. Un ejemplo muy famoso de Galton. Se tomaba como variable predictora la estatura del padre y como variable respuesta o a predecir, la estatura de un hijo. Es claro que para un mismo padre la estatura de sus hijos es variable. No todos los hijos de un mismo padre miden lo mismo. No tiene ning n sentido asumir una relacin u o funcional entre la estatura de un padre y la de un hijo. Tan tontos no son los estad sticos (que no estadistas). De hecho, lo que se modeliza es la relacin entre el valor x y el valor medio de la variable Y dado ese o valor x. Siguiendo con el ejemplo de Galton. Si consideramos un padre de estatura X = 178 cent metros. Supondremos que la media de la variable Y que nos da la estatura aleatoria de un hijo es la que se relaciona con x. Denotemos por E[Y | x] esta media (estatura media de todos los hijos de un padre con estatura 178 cent metros). Hemos de admitir que adems de lo que mide el padre, algo tendr que a a decir la madre, y tambin otros muchos factores que todos podemos imaginar. De e modo que Y , conocida la estatura del padre, sigue siendo una cantidad aleatoria. De hecho, se asume que la distribucin de Y es normal cuya media depende de Y , o E[Y | x], pero cuya varianza no depende de x, es decir, es una cantidad constante que denotaremos por 2 . En resumen, estamos asumiendo que Y N (E[Y | x], 2 ). (4.1)

En el modelo de regresin ms simple con el que se trabaja se asume que la media o a condicionada E[Y | x] es una funcin lineal de x, en otras palabras, se asume que o E[Y | x] = 0 + 1 x. (4.2) Las hiptesis asumidas en 4.1 y 4.2, podemos expresarlas conjuntamente diciendo o que la variable respuesta Y se puede expresar como Y = 0 + 1 x + , 2 (4.3)

donde N (0, 2 ). (4.4) En la formulacin de 4.3 expresamos el valor aleatorio de Y como suma de una o parte que sistemticamente depende de x (la componente sistemtica del modelo) a a y un trmino aleatorio con distribucin normal, un trmino de error o desajuste del e o e modelo. En esta variable normal con media cero y varianza constante 2 estamos incluyendo todas las posibles causas que inuyen el valor de Y y que no vienen dadas por la variable predictora. No consideramos un solo valor aleatorio de Y dado un valor jo de x. Realmente, tenemos n valores observados cuyos valores son independientes entre s pero no tienen la misma distribucin. Hemos de pensar que cad a Yi tiene una variable o predictora distinta que inuye en la distribucin de Yi . Tenemos pares (xi , Yi ) donde o la xi viene dada y consideramos la distribucin de Yi condicionada a xi , es decir, o Yi | xi . Resumiendo, estamos asumiendo que Yi N (0 +1 xi , 2 ) y que los distintos Yi son independientes entre si. Utilizando propiedades de la distribucin normal multio variante tenemos que estas hiptesis las podemos expresar conjuntamente diciendo o que Y Nn (X, 2 Inn ), (4.5) donde Y1 . Y = . . Yn Si consideramos que 1 . =. . n donde los i N (0, 2 ) e independientes entre si. Entonces el modelo dado en 4.5 lo podemos reescribir como Y = X + , (4.6) con Nn (0, 2 Inn ). Este modelo probabil stico es conocido como el modelo de regresin lineal o simple. No lo estudiaremos en ms detalle porque nos vamos a ocupar de la situaa cin ms general en que tenemos ms de una variable predictora. No es ms que o a a a un caso particular y sin mucha dicultad adicional se puede estudiar el situacin o general de regresin lineal mltiple. o u Nota de R 11 (Fichero notaR118) En este banco de datos (Orange) tenemos la variable predictora que nos da la edad del arbol y como variable respuesta la circunferencia del arbol. En gura 4.1 tenemos los datos con los que trabajamos. Obtenemos cmo el ajuste de regresin lineal simple con la funcin lm. La salida o o o bsica que produce nos muestra los estimadores mnimo cuadrticos de los coeciena a tes . En la gura 4.2 aparece la recta mnimo cuadrtica superpuesta a los datos a originales utilizando la funcin abline. Vemos tambin cmo obtener las predicciones o e o y los residuos observados. Finalmente mostramos los residuos frente a las predicciones de los valores. En principio, bajo la hiptesis de que el error tiene varianza o constante no debiramos de observar residuos mayores cuando las predicciones son e mayores. En este caso parece que es esto lo que observamos. 3 1 . X = . . x1 . . . 0 1

xn

data(Orange) attach(Orange) plot(age,circumference) #fig118a.ps lm(circumference ~ age,data=Orange) > lm(circumference ~ age,data=Orange) Call: lm(formula = circumference ~ age, data = Orange) Coefficients: (Intercept) 17.3997

age 0.1068

abline(lm(circumference ~ age,data=Orange)) #fig118b

orange.lm = lm(circumference ~ age,data=Orange) #Veamos qu podemos obtener e attributes(orange.lm) > attributes(orange.lm) $names [1] "coefficients" "residuals" [5] "fitted.values" "assign" [9] "xlevels" "call" $class [1] "lm" #Valores ajustados orange.lm$fitted.values > orange.lm$fitted.values 1 2 3 29.99855 69.07649 88.29515 9 10 11 69.07649 88.29515 124.59706 17 18 19 88.29515 124.59706 148.83392 25 26 27 124.59706 148.83392 163.88854 33 34 35 148.83392 163.88854 186.31030

"effects" "qr" "terms"

"rank" "df.residual" "model"

4 5 6 7 8 124.59706 148.83392 163.88854 186.31030 29.99855 12 13 14 15 16 148.83392 163.88854 186.31030 29.99855 69.07649 20 21 22 23 24 163.88854 186.31030 29.99855 69.07649 88.29515 28 29 30 31 32 186.31030 29.99855 69.07649 88.29515 124.59706

#Residuos observados orange.lm$residuals > orange.lm$residuals 4

1 0.001451402 6 -21.888536235 11 31.402943391 16 -18.076487573 21 -46.310304499 26 30.166079600 31 -7.295146086

2 -11.076487573 7 -41.310304499 12 23.166079600 17 -13.295146086 22 2.001451402 27 45.111463765 32 0.402943391

3 -1.295146086 8 3.001451402 13 39.111463765 18 -16.597056609 23 -7.076487573 28 27.689695501 33 -6.833920400

4 -9.597056609 9 -0.076487573 14 16.689695501 19 -33.833920400 24 23.704853914 29 0.001451402 34 10.111463765

5 -28.833920400 10 22.704853914 15 0.001451402 20 -24.888536235 25 42.402943391 30 -20.076487573 35 -9.310304499

#Residuos frente a predicciones plot(orange.lm$fitted.values, orange.lm$residuals)

circumference

50

100

150

200

500 age

1000

1500

Figura 4.1:

4.2.

Regresin lineal m ltiple o u

Pretendemos determinar la relacin que liga a una variable respuesta Y como o funcin de p 1 variables predictoras, x1 , . . . , xp1 . Siguiendo el razonamiento ano terior podemos plantearnos un modelo muy general como el que sigue. Y = f (x1 , . . . , xn ) + , (4.7)

donde f es una funcin desconocida y es el trmino del error. Vamos a asumir o e una situacin ms simple. En concreto que la funcin f es lineal de modo que la o a o 5

circumference

50

100

150

200

500 age

1000

1500

Figura 4.2:

orange.lm$residuals

40

20

20

40

50

100 orange.lm$fitted.values

150

Figura 4.3:

relacin ser Y = 0 + 1 x1 + . . . + p1 xp1 . Realmente observamos n vectores o a (yi , xi1 , . . . , xi,p1 ) en consecuencia nuestro modelo estocstico ha de considerar el a modelo para los n valores aleatorios Yi , donde cada Yi tiene asociado un vector xi . Vamos a suponer que para una combinacin de valores (xi1 , . . . , xi,p1 ) vamos a o observar un valor aleatorio Yi con distribucin normal cuya media es 0 + 1 xi1 + o . . .+p1 xi,p1 y cuya varianza va a ser constante e igual a 2 . Adems los distintos a Yi son independientes entre si. 6

Vamos a formular conjuntamente estas hiptesis. Denotaremos o 0 Y1 1 x11 . . . x1,p1 1 1 . . . . . . . Y = . X = . = . =. . . . . . . . Yn 1 xn1 . . . xn,p1 n p1 El modelo estocstico bsico es el que sigue a a Y = X + . (4.8)

En este modelo a X le llamaremos la parte sistemtica mientras que es la coma ponente aleatoria del modelo. Estamos expresando los datos como la suma de una parte sistemtica ms una parte aleatoria. La parte sistemtica es la media del veca a a tor Y . Notemos que la dimensin del espacio en que estamos trabajando es n, el o n mero de observaciones. El vector de medias o parte sistemtica del modelo tiene u a dimensin p por lo que la parte no explicada, el residuo, tiene dimensin n p. o o

Residuo

Espacio engendrado por X Valor ajustado


Figura 4.4: Expresamos la observacin y como suma ortogonal de una parte sisteo mtica ms un residuo. a a

4.3.

Estimacin de o

Cmo estimamos los parmetros ? Nuestros datos son (yi , xi1 , . . . , xi,p1 ) con o a i = 1, . . . , n. Nuestro objetivo es estimar los coecientes de modo que X est e prximo a y. En concreto vamos a minimizar o
n i=1

2 = = (y X) (y X). i

(4.9)

Si desarrollamos la expresin anterior tendremos que o (y X) (y X) = y y 2 X y + + X X. Diferenciando respecto de los distintos j e igualando a cero nos da el siguiente sistema de ecuaciones normales: X X = X y. (4.10)

Si asumimos que la matriz X X es una matriz no singular entonces tendremos que = (X X)1 X y, 7 (4.11)

y en consecuencia se sigue que X = X(X X)1 X y = Hy. (4.12)

La matriz H = X(X X)1 X y = Hy es la matriz de proyeccin de y sobre el espacio o engendrado por los p vectores columna de la matriz X. Es una matriz n n. Utilizando la matriz H podemos calcular las predicciones para cada una de los xi originales. Vienen dadas por y = Hy = X . (4.13)

Tambin tenemos los residuos, esto es, las diferencias entre los valores observados e originalmente y las predicciones que de ellos hacemos. Los residuos en trminos de e la matriz H vienen dados por = y Hy = (I H)y. (4.14)

Finalmente, hemos determinado los coecientes que nos minimizaban la suma de cuadrados. El valor m nimo que hemos obtenido que recibe el nombre de suma de cuadrados residual o suma de cuadrados del error que viene dada por
n

SS(Error) =
i=1

(yi yi )2 ,

(4.15)

y ser como funcin de la matriz H, a, o = y (I H)(I H)y = y (I H)y. (4.16)

Veamos una interpretacin geomtrica que nos ayude a entender qu son los o e e estimadores m nimo cuadrticos que utilizamos. Estamos minimizando (yX) (y a X). Si vemos la gura 4.4 el valor de que nos da el m nimo coincide con el punto que nos da la proyeccin ortogonal de y sobre el plano que viene engendrado por o las columnas de la matriz X. De este modo es claro que (y y 1n ) (y y1n ) = (y X ) (y X ) + ( y 1n ) ( y 1n ). y y o de otro modo la ecuacin anterior la podemos expresar como o
n i=1 n n

(4.17)

(yi y )2 =

i=1

(yi yi )2 +

i=1

(yi y)2 .

(4.18)

Las sumas de cuadrados que acabamos de considerar reciben la siguiente denominacin: o Suma de cuadrados total
n

SS(T otal) = (y y1n ) (y y 1n ) = Suma de cuadrados del error

i=1

(yi y )2 .

(4.19)

SS(Error) = (y X ) (y X ) = Suma de cuadrados de la regresin o

i=1

(yi yi )2 .

(4.20)

SS(Regresion) = ( y1n ) ( y 1n ) = y y 8

i=1

(yi y)2 .

(4.21)

4.4.

Algunos casos particulares

Supongamos en primer lugar la situacin en que no tenemos ning n predictor. o u Esto es, nuestro modelo es Y = + . En este caso se tiene que la matriz de dise o n 1 X = 1n = (1, . . . , 1) , X X = n y, nalmente, = (X X)1 X y = n 1 y = y . n El segundo ejemplo que podemos considerar ser con una sola variable prea dictora o lo que es lo mismo, el modelo de regresin lineal simple. En este caso, o tendremos 1 1 x1 Y1 . . . 0 + . . . = . . . . . . 1 n 1 xn Yn Notemos que podemos hacer Yi = 0 + 1 x + 1 (xi x) + i . Nuestra matriz de dise o ser n a 1 . X = . . con X X = n 0
n i=1 (xi

1 xn x 0

x1 x . . .

x)2

Finalmente se comprueba sin dicultad que =


n i=1 (xi x)yi n 2 i=1 (xi x)

(4.22)

4.5.

Verosimilitud

Dados los datos (xi , yi ) con i = 1, . . . , n la verosimilitud de y = (y1 , . . . , yn ) vendr dada por a L(, ) = y la logverosimilitud ser a l(, ) = n 1 log(2) n log 2 (y X) (y X). 2 2 (4.24) 1 1 exp{ 2 (y X) (y X)} n n 2 (2) 2 (4.23)

El estimador mximo veros a mil de se obtiene maximizando cualquiera de las dos funciones anteriores. Es obvio que el mximo respecto de se obtiene como el a valor que minimiza (y X) (y X), en denitiva, que los estimadores mximo a veros miles no son ms que los estimadores m a nimo cuadrticos. a Veamos un primer anlisis de regresin utilizando la funcin base lm. a o o Nota de R 12 (Fichero notaR119) Vamos a trabajar con un banco de datos relativos a precios de la vivienda. Es un chero que viene con el paquete SPSS. Tenemos las siguientes variables: VALTERR Valor de tasacin del terreno. o VALMEJOR Valor de tasacin de las mejoras. o 9

VALTOT Valor de tasacin total. o PRECIO Precio de venta. TASA Razn del precio de venta sobre el valor de tasacin total. o o BARRIO Barrio en el que se encuentra la vivienda. Nos planteamos predecir el precio de venta de la vivienda utilizando como variables predictoras el valor de tasacin del terreno y de las mejoras. Notemos que el valor o total no es ms que la suma de la tasacin del terreno ms el valor de las mejoras. a o a library(foreign) x = read.spss(file=../data/venta_casas.sav,to.data.frame=T) attach(x) casas.lm = lm(PRECIO ~ VALTERR + VALMEJOR) casas.lm > casas.lm Call: lm(formula = PRECIO ~ VALTERR + VALMEJOR) Coefficients: (Intercept) 767.4080

VALTERR 3.1916

VALMEJOR 0.4779

4.6.

Distribucin muestral de o

Hemos visto que = (X X)1 X Y . Aplicando propiedades simples de la media tenemos que E = (X X)1 X (EY ) = , (4.25) o lo que es lo mismo que es un estimador insesgado de , el estimador tiene por vector de medias el vector de parmetros que estima. Es una buena propiedad. a Veamos la expresin de la matriz de varianzas. o var() = (X X)1 X ( 2 I)X(X X)1 = (X X)1 2 . (4.26)

Como vemos la matriz de covarianzas depende de la varianza desconocida del error 2 . Si estimamos esta varianza podremos tener un estimador de dicha matriz de covarianzas. Se puede probar que E[SS(Error)] = (n p) 2 de donde, un estimador insesgado para la varianza 2 viene dado por 2 = . np (4.28) (4.27)

Ya podemos estimar var(). Este estimador ser a var() = (X X)1 2 . 10 (4.29)

Si (X X)1 = [aij ]i,j=1,...,p entonces el estimador de la varianza de i , var(i ), ser a 2 i es un estimador insesgado de i y por lo tanto su varianza aii . Recordemos que coincide con su error cuadrtico medio. Finalmente el error estndar de i , es decir, a a su desviacin t o pica (ra cuadrada de su varianza) ser z a SE(i ) = aii . (4.30) Realmente de sabemos ms cosas: = (X X)1 X Y y puesto que Y a 2 Nn (X, Inn ) entonces, por propiedades bsicas de la distribucin normal mula o tivariante (ver apartado 1.4) se tiene que Np (, (X X)1 2 ). (4.31)

Nota de R 13 (Fichero notaR121) Utilizamos los datos de 12. Una vez realizado el ajuste con la funcin summary podemos observar los valores estimados de o (etiquetado como Residual standard error y los errores estndar de i . a summary(casas.lm) > summary(casas.lm) Call: lm(formula = PRECIO ~ VALTERR + VALMEJOR) Residuals: Min 1Q -153634.1 -10451.5

Median -575.7

3Q 8689.8

Max 356418.3

Coefficients: Estimate Std. Error (Intercept) 7.674e+02 1.290e+03 VALTERR 3.192e+00 5.339e-02 VALMEJOR 4.779e-01 2.552e-02 --Signif. codes: 0 *** 0.001 **

t value Pr(>|t|) 0.595 0.552 59.777 <2e-16 *** 18.728 <2e-16 *** 0.01 * 0.05 . 0.1

Residual standard error: 28070 on 2437 degrees of freedom Multiple R-Squared: 0.6756, Adjusted R-squared: 0.6754 F-statistic: 2538 on 2 and 2437 DF, p-value: < 2.2e-16

4.7.

Bondad de ajuste

Hemos supuesto una relacin lineal entre la media de la variable respuesta y las o variables predictoras. Asumiendo la relacin hemos considerado una funcin objetivo o o y minimizando dicha funcin hemos obtenido los estimadores m o nimo cuadrticos. a Sin embargo, la primera pregunta que hay que responder es: tenemos un ajuste razonable? La respuesta se da utilizando medidas que comparan los valores observados con las predicciones asumiendo el modelo, es decir, comparando yi con yi para los distintos datos. En concreto, con diferencia la ms utilizada es el coeciente a de determinacin que se denota por R2 y se dene como o R2 = 1
n i=1 (yi n i=1 (yi

yi )2 SS(Error) . = 1 SS(T otal) yi )2 11

(4.32)

Es habitual denominar a i=1 (yi yi )2 , suma de cuadrados del error mientras que a SS(Regresion) = n (i y )2 se le llama suma de cuadrados de la y i=1 regresin. Tenemos pues que o R2 =
n y 2 i=1 (i y ) n 2 i=1 (yi yi )

SS(Regresion) . SS(T otal)

(4.33)

El ajuste que estamos realizando se supone que ser tanto mejor cuanto ms pea a que a sea SS(Error). Tampoco ser natural que SS(Error) fuera nula pues ser n a a tanto como asumir que los distintos valores aleatorios son iguales a su media. Notemos que SS(T otal) es una cuanticacin de la variabilidad de los distintos yi sin o tener en cuenta las variables predictoras mientras que SS(Error) nos cuantica la variacin residual despus de utilizar las variables predictoras. Es de esperar que un o e mejor ajuste vaya acompa ado de un valor de SS(Error) peque o en relacin con n n o SS(T otal). Esa es la idea del coeciente de determinacin. Toma valores entre 0 y o 1 y cuanto ms cerca de 1 mejor es el ajuste. a Tiene un peque o inconveniente y es que no tiene en cuenta el n mero de van u riables predictoras que estamos utilizando para predecir la variable respuesta. Una peque a modicacin de R2 para incorporar esta informacin es el coeciente de n o o determinacin ajustado que podemos denotar R2 -ajustado y se dene como o R2 ajustado = 1
n 2 i=1 (yi yi ) /(n p) , n 2 i=1 (yi y ) /(n 1)

(4.34)

donde suponemos que tenemos p 1 variables predictoras. Nota de R 14 (Fichero notaR120) Continuamos con los datos de la nota 12. Vemos los coecientes estimados y los valores de R2 y R2 -ajustado.

summary(casas.lm) > summary(casas.lm) Call: lm(formula = PRECIO ~ VALTERR + VALMEJOR) Residuals: Min 1Q -153634.1 -10451.5

Median -575.7

3Q 8689.8

Max 356418.3

Coefficients: Estimate Std. Error (Intercept) 7.674e+02 1.290e+03 VALTERR 3.192e+00 5.339e-02 VALMEJOR 4.779e-01 2.552e-02 --Signif. codes: 0 *** 0.001 **

t value Pr(>|t|) 0.595 0.552 59.777 <2e-16 *** 18.728 <2e-16 *** 0.01 * 0.05 . 0.1

Residual standard error: 28070 on 2437 degrees of freedom Multiple R-Squared: 0.6756, Adjusted R-squared: 0.6754 F-statistic: 2538 on 2 and 2437 DF, p-value: < 2.2e-16

12

4.8.

Valoracin de las hiptesis del modelo o o

Un modelo de regresin lineal m ltiple supone, como hemos visto, varias hipo u o tesis. Es necesario valorar lo razonables, lo asumibles que son estas hiptesis. Las o hiptesis del modelo que vamos a valorar son las siguientes: o 1. Tenemos errores independientes, con la misma varianza y con distribucin o normal? Esto es, nos preguntamos si es asumible la hiptesis Nn (0, 2 Inn ). o 2. Asumimos que E[Yi | xi ] = 0 + 1 xi1 + . . . + p1 xi,p1 . Los errores no son directamente observables. Observamos los residuos = y y que no es lo mismo. Las propiedades de ambos vectores son distintas. En particular, estamos asumiendo que var() = 2 Inn . Sin embargo, esta armacin no es cierta o para los residuos observados . Notemos que y = X(X X)1 X y = Hy. De modo que = y y = (I H)y = (I H)X + (I H) = (I H). La tercera igualdad anterior es consecuencia de que HX = X porque H es la matriz de proyeccin sobre el espacio engendrado por las columnas de X y X est o a en este espacio por lo que la proyeccin es el propio punto. Notemos que I H o tambin es una matriz de proyeccin (sobre el espacio ortogonal al engendrado por e o las columnas de X) de modo que (I H)2 = I H. Aplicando esta propiedad se tiene que var() = var(I H) = (I H) 2 , (4.35)

ya que var() = 2 Inn . Vemos pues que, aunque asumimos que los errores son incorrelados y con la misma varianza, esto no es cierto para los residuos . La mera observacin de los residuos sin considerar su posible asociacin con otra o o variable no nos proporciona informacin sobre si la varianza de los mismos es conso tante. Hemos de considerarlos en relacin con otras variables. Es habitual considerar o un diagrama de puntos de los residuos como funcin de las predicciones y . Cuan o do la varianza es constante debemos de observar los residuos dispersos de un modo aleatorio respecto del eje de abscisas. Tambin podemos ver un comportamiento no e aleatorio alrededor del eje de abscisas cuando la parte estructural del modelo no es lineal, es decir, cuando no se verica que EY = X.

Nota de R 15 (Fichero notaR122) Los datos que vamos a utilizar para valorar las hiptesis del modelo son los datos savings contenido en la librera faraway ([? o ]). En la gura 4.5 tenemos un diagrama de puntos donde en abscisas tenemos las predicciones y en ordenadas tenemos los residuos. No parece en principio que no podamos asumir una varianza constante. Observemos la gura 4.5 nos indica los tres pases con los residuos ms extremos: Chile, Filipinas y Zambia. a

library(faraway) data(savings) attach(savings) #Hacemos el ajuste lineal savings.lm = lm(sr~pop15+pop75+dpi+ddpi,savings)

13

Residuals vs Fitted

10

Zambia

Philippines

Residuals

Chile

10

10

12

14

16

Fitted values lm(sr ~ pop15 + pop75 + dpi + ddpi)

Figura 4.5: #Notemos que elegimos el primer dibujo plot(savings.lm,which=1) #fig122a

Cuando no tenemos una varianza constante una opcin es transformar las variao bles. Si y es la variable original y h(y) la transformada queremos determinar h de modo que la transformada tenga varianza constante. Transformaciones habituales que podemos valorar son la ra cuadrada o el logaritmo de la variable respuesta. z Qu tipo de representacin cabe esperar cuando la varianza no es constante? e o Veamos distintas representaciones de los residuos frente a los valores ajustados correspondiendo a varianza constante, varianzas no constantes y situaciones en que no hay linealidad. Nota de R 16 (Fichero notaR123) Ilustramos cmo observaramos residuos cuo ya varianza es constante. En la gura 4.6 tenemos 50 posibles residuos en donde la varianza es constante. En la gura 4.7 tenemos como abscisas valores que van de 1 a 50 en incrementos unitarios. El valor de residuo que generamos tienen varianza creciente. En concreto vamos multiplicando el valor con distribucin N (0, 1) por o una constante c. La varianza es del orden del cuadrado del valor por el que multipli camos. En la gura 4.8 los valores por los que multiplicamos son 1, 2, 3, . . . , 50 por lo que las varianzas se incrementan muy menos de una abscisa a la siguiente. Finalmente en la gura 4.9 mostramos un ejemplo de un residuo no lineal. Es un caso en que no podemos suponer la media funcin lineal de los predictores. o ## Evaluacin de los residuos con datos generados o 14

par(mfrow=c(3,3)) ##Varianza constante for(i in 1:9) plot(1:50,rnorm(50)) #fig123a ##Varianza no constante for(i in 1:9) plot(1:50,(1:50)*rnorm(50)) #fig123b ##Varianza ligeramente no constante for(i in 1:9) plot(1:50,sqrt((1:50))*rnorm(50)) #fig123c ##No linealidad for(i in 1:9) plot(1:50,cos((1:50)*pi/25)+rnorm(50)) #fig123d

La siguiente hiptesis a valorar es la normalidad de los errores. La herramienta o grca ms habitual es el dibujo q-q o la representacin cuantil-cuantil. Ordenamos a a o i los residuos y representamos los residuos ordenados en funcin de 1 ( n+1 ) para o i = 1, . . . , n. Si los residuos tienen una distribucin normal entonces deben estar o alineados. El histograma no es muy adecuado para ver la normalidad de los residuos. Nota de R 17 (Fichero notaR124) Para los datos savings representamos un dibujo q-q. En la gura 4.10 mostramos cmo hacerlo despus de ajustar el modelo o e y utilizando la funcin plot (realmente estamos utilizando plot.lm). En la gura o 4.11 aparece un dibujo q-q utilizando las funciones qqnorm que construye el dibujo y qqline que a ade una lnea uniendo el primer y tercer cuartil. Como vemos es el n mismo dibujo.

#Dibujo q-q para los datos savings plot(savings.lm,which=2) #fig124a #Otra forma de hacerlo sin utilizar el plot.lm qqnorm(residuals(savings.lm),ylab="Residuos") qqline(residuals(savings.lm)) #A~ade una lnea que une primer y tercer n #cuartil #fig124b

Veamos cmo se modica la forma del dibujo q-q con otras distribuciones que o no son normales. Es decir, vamos a valorar la forma de esta representacin grca o a cambiando el modelo. Nota de R 18 (Fichero notaR125) En esta nota consideramos cuatro distribuciones de probabilidad. En la gura 4.12 aparecen las densidades de los modelos considerados. La primera es la correspondiente a la distribucin normal. Luego teo nemos la lognormal, la densidad de una Cauchy y la densidad uniforme. La lognormal se toma como ejemplo de distribucin asimtrica, la Cauchy como ejemplo de o e 15

0.0 1.0 2.0

rnorm(50)

1.0

rnorm(50)

rnorm(50) 0 10 20 30 40 50

0.0

1.5

10

20

30

40

50

1.5

1 0

10

20

30

40

50

1:50

1:50

1:50

rnorm(50)

rnorm(50)

rnorm(50) 0 10 20 30 40 50

10

20

30

40

50

1.0 0

0.0

1.0

10

20

30

40

50

1:50

1:50

1:50

rnorm(50)

rnorm(50)

rnorm(50) 0 10 20 30 40 50

2 1

1 0

10

20

30

40

50

1 0

10

20

30

40

50

1:50

1:50

1:50

Figura 4.6: una distribucin con las colas ms largas que la normal y nalmente la uniforme o a como ejemplo de distribucin con las colas ms cortas. o a En la gura 4.13 tenemos nueve dibujos q-q realizados con datos simulados con una distribucin normal. Las guras 4.14, 4.15 y 4.16 tambin dibujos q-q con datos o e simulados correspondientes a la distribucin lognormal (gura 4.14), distribucin de o o Cauchy (gura 4.15) y uniforme (gura 4.16).

##Veamos cmo se modifican los dibujos q-q con otras distribuciones o ##Primero vemos las densidades de probabilidad par(mfrow=c(2,2)) #fig125a ##Con una normal curve(dnorm) ##Con una lognormal como ejemplo de distribucin asimtrica o e curve(dlnorm) 16

(1:50) * rnorm(50)

40

(1:50) * rnorm(50)

(1:50) * rnorm(50) 0 10 20 30 40 50

50

80 40

10

20

30

40

50

100

100 0

50

10

20

30

40

50

1:50

1:50

1:50

100

(1:50) * rnorm(50)

(1:50) * rnorm(50)

(1:50) * rnorm(50) 0 10 20 30 40 50

50

50

50 0

10

20

30

40

50

100 0

50

50

10

20

30

40

50

1:50

1:50

1:50

(1:50) * rnorm(50)

(1:50) * rnorm(50)

(1:50) * rnorm(50) 0 10 20 30 40 50

100

10

20

30

40

50

40

50 0

50 100

50

40

80

10

20

30

40

50

1:50

1:50

1:50

Figura 4.7: ##Con una Cauchy como ejemplo de distribucin con colas ms largas o a curve(dcauchy) ##con una uniforme como ejemplo de distribucin con colas ms cortas o a curve(dunif) ##Generamos datos y vemos los dibujos correspondientes par(mfrow=c(3,3)) for(i in 1:9) qqnorm(rnorm(50)) #fig125b for(i in 1:9) qqnorm(exp(rnorm(50))) #fig125c for(i in 1:9) qqnorm(rcauchy(50)) #fig125d for(i in 1:9) qqnorm(runif(50)) #fig125e Como vemos no es simple la interpretacin de estos dibujos. Por ejemplo, no es o fcil diferenciar entre una distribucin con colas ms largas de una situacin en dona o a o de tenemos observaciones anmalas. Cmo hacerlo? Si quitamos las observaciones o o 17

sqrt((1:50)) * rnorm(50)

sqrt((1:50)) * rnorm(50)

sqrt((1:50)) * rnorm(50) 0 10 20 30 40 50

10

10

20

30

40

50

15 5 0

10

10

15

10

20

30

40

50

1:50

1:50

1:50

sqrt((1:50)) * rnorm(50)

sqrt((1:50)) * rnorm(50)

sqrt((1:50)) * rnorm(50) 0 10 20 30 40 50

15

10

20

30

40

50

15

10 0

10

10

20

30

40

50

1:50

1:50

1:50

sqrt((1:50)) * rnorm(50)

sqrt((1:50)) * rnorm(50)

sqrt((1:50)) * rnorm(50) 0 10 20 30 40 50

5 10

5 10

10

10

10

20

30

40

50

10 0

5 10

10

20

30

40

50

1:50

1:50

1:50

Figura 4.8: extremas y aparecen otras estamos en una distribucin con colas largas. o Si tenemos muestras grandes el problema de la no normalidad se alivia. El problema de la no normalidad es mayor para colas largas que para colas ms cortas. a La asimetr se resolver transformando los datos. a a Tambin podemos usar un test de normalidad. Un test de normalidad es un e cualquier test estad stico donde la hiptesis nula es que los datos observados (en o nuestro caso los residuos observados) proceden de una distribucin normal. Una o opcin que viene implementada con la funcin shapiro.test es el test de Shapiroo o Wilk. Nota de R 19 (Fichero notaR126) Aplicamos un test de Shapiro-Wilk a los residuos observados en el ajuste de los datos savings. Vemos que el p-valor observado es muy grande y no podemos rechazar la normalidad de los residuos. residuals(savings.lm)

18

cos((1:50) * pi/25) + rnorm(50)

cos((1:50) * pi/25) + rnorm(50)

cos((1:50) * pi/25) + rnorm(50)

0 1 2 3

1 2 3

10

20

30

40

50

10

20

30

40

50

3 0

1 2

10

20

30

40

50

1:50

1:50

1:50

cos((1:50) * pi/25) + rnorm(50)

cos((1:50) * pi/25) + rnorm(50)

cos((1:50) * pi/25) + rnorm(50)

10

20

30

40

50

10

20

30

40

50

3 0

1 2 3

1 2

10

20

30

40

50

1:50

1:50

1:50

cos((1:50) * pi/25) + rnorm(50)

cos((1:50) * pi/25) + rnorm(50)

cos((1:50) * pi/25) + rnorm(50)

10

20

30

40

50

10

20

30

40

50

2 0

10

20

30

40

50

1:50

1:50

1:50

Figura 4.9: shapiro.test(residuals(savings.lm)) > shapiro.test(residuals(savings.lm)) Shapiro-Wilk normality test data: residuals(savings.lm) W = 0.987, p-value = 0.8524 Estamos asumiendo que los errores son incorrelados. La correlacin entre o los datos pueden venir de que han sido observados prximos bien en el tiempo bien o en el espacio. Cmo contrastar si los residuos son incorrelados? o Un test de la hiptesis de incorrelacin es el test de Durbin-Watson que utiliza o o el siguiente estad stico n (i i1 )2 , (4.36) DW = i=2 n 2 i i=1 19

Normal QQ 3

Zambia

Philippines

Standardized residuals

Chile

Theoretical Quantiles lm(sr ~ pop15 + pop75 + dpi + ddpi)

Figura 4.10:
Normal QQ Plot
10 Residuos 5 0 5

0 Theoretical Quantiles

Figura 4.11: bajo la hiptesis nula de incorrelacin la distribucin es una combinacin lineal de o o o o distintas distribuciones 2 . Nota de R 20 (Fichero notaR127) library(lmtest) #Aplicamos el test de Durbin-Watson dwtest(savings.lm) > dwtest(savings.lm) Durbin-Watson test

20

0.4

0.3

dlnorm (x) 2 1 0 x 1 2

dnorm (x)

0.2

0.1

0.0

0.2

0.4

0.6

0 x

0 x

0.0 0.2 0.4 0.6 0.8 1.0 3

dcauchy (x)

0.25

0.05

0.15

dunif (x)

0 x

Figura 4.12: data: savings.lm DW = 1.9341, p-value = 0.3897 alternative hypothesis: true autocorrelation is greater than 0

Algunas observaciones no ajustan bien al modelo y son llamadas observaciones anmalas. Otras observaciones inuyen mucho en el ajuste y lo modican de un o modo substantivo. Estas ultimas reciben el nombre de observaciones inuyentes. Una observacin dada puede ser o bien anmala o bien inuyente o ambas cosas. o o Empecemos estudiando qu se entiende por inuencia de una observacin. Llae o maremos a hi = Hii , esto es, el valor en la posicin (i, i) de la matriz H la inuencia o (leverage en ingls). Notemos que var(i ) = 2 (1 hi ). En consecuencia, una ine uencia alta supone una varianza del correspondiente residuo baja. Forzamos al ajuste a que est prximo a yi . Se tiene que p hi = p. En consecuencia el valor e o i=1 medio de los hi es p/n. Como una regla simple de aplicar si la inuencia hi es mayor que 2p/n debemos de observar el dato con atencin. Buscamos valores grandes de o las inuencias. Nota de R 21 (Fichero notaR128) Calculamos las inuencias para los datos savings. En gura 4.17 aparece una representacin de las inuencias respecto de los o residuos estandarizados. 21

Normal QQ Plot
3 Sample Quantiles Sample Quantiles

Normal QQ Plot
Sample Quantiles 2 2 1 0 1

Normal QQ Plot

2 2

Theoretical Quantiles

Theoretical Quantiles

Theoretical Quantiles

Normal QQ Plot
Sample Quantiles Sample Quantiles 2 2

Normal QQ Plot
Sample Quantiles 2 1 0 1

Normal QQ Plot

2 2

Theoretical Quantiles

Theoretical Quantiles

Theoretical Quantiles

Normal QQ Plot
Sample Quantiles Sample Quantiles 2 2

Normal QQ Plot
Sample Quantiles 0.0 1.0 2.0 1.5

Normal QQ Plot

4 2

Theoretical Quantiles

Theoretical Quantiles

Theoretical Quantiles

Figura 4.13:

library(faraway) data(savings) savings.lm = lm(sr ~ pop15 + pop75 + dpi + ddpi, savings) #Calculamos las influencias savings.inf = influence(savings.lm) savings.inf$hat #Veamos la representacin grfica o a plot(savings.lm,which=5) #fig128a

Otra posibilidad es para encontrar observaciones anmalas consiste en trabajar o con los residuos estudentizados. Veamos su denicin. Notemos que var(i ) = 2 (1 o hi ) lo que sugiere tomar i (4.37) ri = 1 hi Estos son los residuos estudentizados. Si el modelo que asumimos es correcto entonces la varianza de estos residuos es uno y son aproximadamente incorrelados. Notemos que la estudentizacin corrige las varianzas desiguales de los residuos cuando o 22

Normal QQ Plot
Sample Quantiles Sample Quantiles 8 10 12

Normal QQ Plot
Sample Quantiles

Normal QQ Plot

0 2

Theoretical Quantiles

Theoretical Quantiles

Theoretical Quantiles

Normal QQ Plot
Sample Quantiles Sample Quantiles 6

Normal QQ Plot
Sample Quantiles 8 0 2 1 0 1 2 2 4 6

Normal QQ Plot

Theoretical Quantiles

Theoretical Quantiles

Theoretical Quantiles

Normal QQ Plot
Sample Quantiles Sample Quantiles 6 6

Normal QQ Plot
Sample Quantiles 5 2 1 0 1 2 0 1 2 3 4

Normal QQ Plot

Theoretical Quantiles

Theoretical Quantiles

Theoretical Quantiles

Figura 4.14: las varianzas de los errores son iguales entre si. En otro caso esto no es cierto. Si las varianzas de los errores no son iguales (tenemos heterocedasticidad) entonces la estudentizacin no hace homogneas las varianzas de los residuos. o e Algunos autores (y programas) tienden a usar en lugar de los residuos originales, los residuos estudentizados. Una observacin anmala es una observacin que no se ajusta a nuestro moo o o delo. Hemos de protegernos frente a este tipo de puntos. Un test para observaciones anmalas es util si nos permite distinguir entre observaciones que son realmente o anmala y aquellas que simplemente tienen un residuo grande aunque no excepcioo nalmente grande. Para detectar este tipo de puntos, lo que hacemos es excluir el punto i-simo y e ajustamos el modelo sin ese punto obteniendo los estimadores (i) y (i) . Tendremos 2 para el punto i-simo la siguiente estimacin e o y(i) = x (i) . i (4.38)

Si el valor yi y(i) es grande entonces el caso i es una observacin anmala. Con o o objeto de valorar si estos nuevos residuos son anormales hemos de estandarizarlos. Notemos que
var(yi y(i) ) = (i) (1 + x (X(i) X(i) )1 xi ) 2 i

23

Normal QQ Plot
40 Sample Quantiles Sample Quantiles

Normal QQ Plot
Sample Quantiles 80 40 0 40

Normal QQ Plot

20

20

30 2

10

10

Theoretical Quantiles

Theoretical Quantiles

Theoretical Quantiles

Normal QQ Plot
Sample Quantiles Sample Quantiles 20 0

Normal QQ Plot
Sample Quantiles 50 10 10 30

Normal QQ Plot

60

20 2

0 10

Theoretical Quantiles

Theoretical Quantiles

Theoretical Quantiles

Normal QQ Plot
Sample Quantiles Sample Quantiles 100 5

Normal QQ Plot
Sample Quantiles

Normal QQ Plot

10 5

50

300 2

100

50

Theoretical Quantiles

Theoretical Quantiles

Theoretical Quantiles

Figura 4.15: de modo que podemos denir los residuos jackknife como ti = var(yi y(i) ) yi y(i) = yi y(i) tnp1 ,

(i)

1 + x (X(i) X(i) )1 xi i

asumiendo que el modelo es correcto. Se tiene la siguiente expresin o ti = np1 i = ri 2 n p ri (i) 1 hi


1/2

Puesto que cada uno de los ti sigue una distribucin conocida podemos contrastar si o tenemos una observacin anmala. En principio el procedimiento ser simplemente o o a jar un nivel de signicacin y determinar el percentil 1 de una distribucin o o 2 t de Student con n p 1 grados de libertad. Si denotamos el percentil como e tnp1,1 entonces residuos que no estn en el intervalo [tnp1,1 , tnp1,1 ] 2 2 2 ser sospechosos. Esto no es adecuado. Porque estamos analizando n residuos an estudentizados. Con uno slo s que ser aplicable el razonamiento. Tenemos un o a problema de muchos tests simultneamente considerados. Si aplicamos la correccin a o de Bonferroni tendr amos que corregir el nivel de signicacin y trabajar con o /n. Por tanto, consideramos como sospechosos aquellos residuos estandarizados que estn fuera del intervalo [tnp1,1 2n , tnp1,1 2n ]. e 24

Normal QQ Plot
1.0 Sample Quantiles Sample Quantiles 1.0

Normal QQ Plot
Sample Quantiles 0.8 0.0 0.4

Normal QQ Plot

0.6

0.2

0.2 2

0.6

Theoretical Quantiles

Theoretical Quantiles

Theoretical Quantiles

Normal QQ Plot
Sample Quantiles Sample Quantiles 0.8 0.8

Normal QQ Plot
Sample Quantiles 0.8 0.0 0.4

Normal QQ Plot

0.4

0.0

0.0 2

0.4

Theoretical Quantiles

Theoretical Quantiles

Theoretical Quantiles

Normal QQ Plot
Sample Quantiles Sample Quantiles 0.8 0.8

Normal QQ Plot
Sample Quantiles 0.8 0.0 0.4

Normal QQ Plot

0.4

0.0

0.0 2

0.4

Theoretical Quantiles

Theoretical Quantiles

Theoretical Quantiles

Figura 4.16:

Residuals vs Leverage 3

Zambia

1 Japan 0.5

Standardized residuals

Libya 0.5

Cooks distance 0.0 0.1 0.2 0.3 0.4 0.5

Leverage lm(sr ~ pop15 + pop75 + dpi + ddpi)

Figura 4.17:

25

Nota de R 22 (Fichero notaR130) Calculamos para los datos savings los residuos estudentizados con la funcin rstudent. La pregunta que nos hacemos es si o alguno de estos residuos es muy grande o muy peque o. Comparamos el mdulo de n o los residuos estandarizados con tnp1,1 2n . #Residuos estudentizados savings.rs = rstudent(savings.lm) #Comparamos los residuos el percentil correspondiente abs(savings.rs) > qt(1-.05/(50*2),44) Un punto inuyente es aquel que cuando lo quitamos causa una modicacin o importante del ajuste. Un punto inuyente puede ser o no una observacin anmala, o o puede tener o no una alta inuencia pero tender a tener al menos una de las dos a propiedades. El estad stico de Cook es una de las maneras de medir la inuencia. Se dene como ( y(i) ) ( y(i) ) y y 1 2 hi = ri . (4.39) Di = 2 p p 1 hi Nota de R 23 (Fichero notaR129) Con los datos savings representamos las distancias de Cook (gura 4.18) y las obtenemos utilizando la funcin Cooks.distance. o Vemos Lbia, Zambia y Japn son observaciones que inuyen mucho en el ajuste. o Habra que valorar el ajuste con y sin estas observaciones. #Distancia de Cook plot(savings.lm,which=4) #fig129a #Tambin podemos ver los valores de la e # distancia de Cook cooks.distance(savings.lm)

4.9.

Inferencia sobre el modelo

Hemos formulado un modelo probabil stico en donde relacionamos la variable respuesta con una serie de variables predictoras. Es claro que el experimentador introduce en el modelo como variables predictoras variables que a priori sospecha que pueden ser relevantes a la hora de predecir. Esto no quiere decir que luego podamos prescindir de alguna o algunas de ellas. Bien porque se demuestra que dicha variable no es relevante o bien porque la informacin que contiene esa variable o predictora est contenida en las otras. a Supongamos que nos planteamos el siguiente contraste de hiptesis: H0 : i1 = o . . . = ir = 0 frente a la alternativa H1 : No H0 . Si un coeciente determinado i es nulo entonces la variable respuesta Y no depender de la variable asociada a dicho a coeciente. En denitiva, la hiptesis nula considerada se podr formular diciendo o a o que la variable Y no depende de las variables xi1 , . . . , xir . Cmo contrastar las hiptesis indicadas? Se puede hacer mediante el test del cociente de verosimilitudes, o es decir, utilizando el estad stico = mx(,)0 L(, ) a mx(,) L(, ) a 26 (4.40)

Cooks distance
Libya

Cooks distance

0.15

0.20

0.25

Japan

0.10

Zambia

0.00 0

0.05

10

20

30

40

50

Obs. number lm(sr ~ pop15 + pop75 + dpi + ddpi)

Figura 4.18: siendo L(, ) =


1 n (2) 2 n 1 exp{ 22 (y X) (y X)}, 0 = {(, ) Rp

(0, +) : i1 = . . . = ir = 0} y = Rp (0, +). Como es habitual en un test del cociente de verosimilitudes rechazar amos la hiptesis nula si es peque o (menor o n que una cierta constante) que se prueba es equivalente a que SS(Error)0 SS(Error) SS(Error) sea grande (mayor que una cierta constante). Denotamos por SS(Error)0 la suma de cuadrados del error bajo la hiptesis nula y SS(Error) la suma de cuadrados o sobre todo el espacio paramtrico. Bajo la hiptesis nula se verica que e o SS(Error)0 SS(Error) 2 r 2 r y SS(Error) 2 np 2 (n p)

adems ambas cantidades son independientes. Por ello se verica que a F = (SS(Error)0 SS(Error) )/r Fr,np . (SS(Error) )/(n p) F > Fr,np,1 donde Fr,np,1 es el percentil 1 de una F con r y n p grados de libertad. Realmente depende la variable respuesta de alguna de las variables predictoras? Realmente nos estamos planteando la hiptesis de que todos los coecientes, salvo el o trmino constante 0 , valen cero, es decir, la hiptesis nula H0 : 1 = . . . = p1 = 0. e o En este caso tendremos que F = ((y 1n y ) (y 1n y) (y X ) (y X ))/(p 1) Fp1,np . (y X ) (y X )/(n p) 27

De modo que rechazaremos la hiptesis nula de que H0 : i1 = . . . = ir = 0 si o

Como segundo caso tendr amos la situacin en que contrastamos que un solo coeo ciente vale cero, es decir, la hiptesis nula H0 : i = 0 frente a la alternativa o H1 : i = 0. Tenemos que bajo la hiptesis nula indicada o ti = i SE(i ) tnp

donde SE(i ) es el error estndar de i y viene dado en ecuacin 4.30. Se tiene, de a o hecho, que F = t2 . i Rechazaremos la hiptesis nula si o |ti | > tnp,1 2 o bien si F = t2 > F1,np,1 . i 2 Ambos procedimientos son equivalentes como se puede ver fcilmente. a Nota de R 24 (Fichero notaR131) Utilizando los datos savings podemos ver en la ultima lnea el contraste de que todas las variables predictoras tienen su coeciente asociado nulo. El p-valor es 0,0007904, es decir, es muy peque o por lo que rechazan mos la hiptesis nula. Al menos una de las variables predictoras tiene su coeciente o asociado no nulo. Cuando contrastamos la hiptesis de que cada coeciente valga cero vemos que o no podemos rechazarlo para las variables pop75 y dpi. library(faraway) data(savings) attach(savings) #Hacemos el ajuste lineal savings.lm = lm(sr~pop15+pop75+dpi+ddpi,savings) summary(savings.lm) > summary(savings.lm) Call: lm(formula = sr ~ pop15 + pop75 + dpi + ddpi, data = savings) Residuals: Min 1Q Median -8.2422 -2.6857 -0.2488 Coefficients: Estimate (Intercept) 28.5660865 pop15 -0.4611931 pop75 -1.6914977 dpi -0.0003369 ddpi 0.4096949 --Signif. codes: 0 *** Std. Error t value Pr(>|t|) 7.3545161 3.884 0.000334 *** 0.1446422 -3.189 0.002603 ** 1.0835989 -1.561 0.125530 0.0009311 -0.362 0.719173 0.1961971 2.088 0.042471 * 0.001 ** 0.01 * 0.05 . 0.1 28

3Q 2.4280

Max 9.7509

Residual standard error: 3.803 on 45 degrees of freedom Multiple R-Squared: 0.3385, Adjusted R-squared: 0.2797 F-statistic: 5.756 on 4 and 45 DF, p-value: 0.0007904

Podemos tener intervalos de conanza para cada uno de los coecientes i . i Teniendo en cuenta que SE( i) tnp entonces el intervalo de conanza al nivel i 1 para el coeciente i ser a i tnp,1 SE(i ). 2 Nota de R 25 (Fichero notaR132) Calculamos los intervalos de conanza para los coecientes de savings con la funcin connt. o confint(savings.lm) > confint(savings.lm) 2.5 % (Intercept) 13.753330728 pop15 -0.752517542 pop75 -3.873977955 dpi -0.002212248 ddpi 0.014533628

97.5 % 43.378842354 -0.169868752 0.490982602 0.001538444 0.804856227

Supongamos que consideramos un vector de predictores x0 y pretendemos predecir la correspondiente media de la variable respuesta. Esta media viene dada por E[Y |x0 ] = x . 0 La estimacin de esta media es o que tiene varianza x , 0

var(x ) = x (X X)1 x0 2 . 0 0

Esta varianza la estimamos mediante var(x ) = x (X X)1 x0 2 . 0 0 Y el intervalo de conanza ser a x tnp,1 0 2 x (X X)1 x0 . 0

Supongamos que, en lugar de predecir la media de la variable respuesta para un conjunto de predictores dados, pretendemos predecir la propia variable respuesta. Recordemos que seg n nuestro modelo tenemos u Y = x + . 0 En consecuencia la prediccin de la propia observacin ser o o a x 0 29

pero hay que considerar la varianza a adida por el error de modo que la varianza n al predecir Y dado x0 ser a var(x ) + 2 0 que estimar amos como var(x ) + 2 = x (X X)1 x0 2 + 2 = (x (X X)1 x0 + 1) 2 . 0 0 0 Finalmente tendremos que el intervalo de conanza para una observacin Y que o tiene predictores x0 es el siguiente x tnp,1 0 2 x (X X)1 x0 + 1 0

Nota de R 26 (Fichero notaR133) Con los datos savings consideramos cmo o obtener las predicciones, intervalos de conanza para las medias y para las predicciones. Utilizamos los propios datos que se han utilizado para ajustar el modelo. Con la funcin predict obtenemos las predicciones as como los intervalos de conano za para las medias de las predicciones (predict con la opcin interval=condence) o y los intervalos de conanza para las observaciones (predict con la opcin intero val=prediction).

#Predicciones para los propios datos predict(savings.lm) #Intervalos de confianza para la prediccin de la media o predict(savings.lm,interval="confidence") #Intervalos de confianza para la prediccin de la observacin o o predict(savings.lm,interval="prediction")

4.10.

Seleccin de variables o

Habitualmente tenemos un gran conjunto de variables y pretendemos determinar un buen conjunto de variables. En qu sentido bueno? En primer lugar, bueno en e el sentido de sencillo. Tener pocas variables supone un modelo ms simple, ms a a fcil de entender. Es bueno tener pocas variables porque luego no tendremos que a recoger esta informacin. Es bueno porque los estimadores de los parmetros que o a intervienen en el modelo son mucho menos variables. Dos son las aproximaciones al problema de la seleccin de variables. En la primeo ra vamos comparando modelos sucesivos y, bsicamente, consideramos si los modelos a sucesivos que comparamos dieren signicativamente como modelos. En la segunda se adopta una medida de calidad global del ajuste y se plantea el problema de determinar el modelo que optimiza ese criterio global.

4.10.1.

Procedimientos que comparan modelos

Tres procedimientos se pueden considerar: seleccin backward, seleccin foro o ward y seleccin stepwise. En el primer procedimiento, seleccin backward o o (seleccin hacia atrs), empezamos el proceso de seleccin con un modelo en que o a o tenemos todas las variables consideradas a priori. Elegimos aquella que, cuando la quitamos, el p-valor resultante de comparar ambos modelos (completo y aquel que 30

le falta la variable considerada) es mayor. Si este p-valor es mayor que un valor previamente especicado entonces eliminamos la variable del modelo. Y as conti nuamos hasta que al eliminar una variable el p-valor correspondiente sea menor que el elegido. El procedimiento seleccin forward (o hacia adelante) empezamos con un o modelo en el cual solamente tenemos la constante. Elegimos para entrar la variable tal que cuando se incorpora el modelo cambia lo ms posible. Esto es, el p-valor es a el ms signicativo. Si el p-valor de la comparacin de los modelos es menor que a o (siempre elegido antes de iniciar el proceso de seleccin y no reajustado a lo largo del o mismo) entonces la variable entra en el modelo. Continuamos hasta que el modelo no cambia signicativamente. El procedimiento ms usado es el seleccin stepwise (hacia adelante y hacia a o atrs). Vistos los anteriores es de esperar cmo funciona este mtodo. Despus de la a o e e inclusin de una variable consideramos la posible exclusin de las variables que estn o o a en el modelo. Si es posible eliminar una lo hacemos y nos planteamos la inclusin o de la variable que produzca un cambio ms signicativo. a Nota de R 27 (Fichero notaR146) Utilizamos los datos state y aplicamos un procedimiento de seleccin backward. o data(state) statedata = data.frame(state.x77,row.names=state.abb,check.names=T) g = lm(Life.Exp~.,data=statedata) summary(g) g=update(g,.~.-Area) summary(g) g=update(g,.~.-Illiteracy) summary(g) g=update(g,.~.-Income) summary(g) g=update(g,.~.-Population) summary(g)

4.10.2.

Procedimientos basados en criterios

Estamos ajustando un modelo de regresin lineal m ltiple con alg n propsito. o u u o Podemos jarnos en una medida global de calidad del ajuste y buscar la seleccin o de variables que nos da el ptimo seg n ese criterio. o u Una medida global puede ser AIC (Akaike Information Criterion) denido como AIC = 2 mx logverosimilitud + 2p. a A partir de la denicin de esta medida global es claro que un valor peque o o n indica un mejor ajuste. Nota de R 28 (Fichero notaR147) Vamos a aplicar una seleccin de variables o utilizando la optimizacin (minimizacin del AIC) con los datos state. o o Notemos que con en la funcin step podemos indicar con el argumento direction o si queremos both (stepwise), o bien backward o bien forward. 31

data(state) statedata = data.frame(state.x77,row.names=state.abb,check.names=T) g = lm(Life.Exp ~ ., data=statedata) step(g) > step(g) Start: AIC= -22.18 Life.Exp ~ Population + Income + Illiteracy + Murder + HS.Grad + Frost + Area Df Sum of Sq 1 0.001 1 0.004 1 0.005 1 1 1 1 1.747 1.847 2.441 23.141 RSS 23.298 23.302 23.302 23.297 25.044 25.144 25.738 46.438 AIC -24.182 -24.175 -24.174 -22.185 -20.569 -20.371 -19.202 10.305

- Area - Income - Illiteracy <none> - Population - Frost - HS.Grad - Murder

Step: AIC= -24.18 Life.Exp ~ Population + Income + Illiteracy + Murder + HS.Grad + Frost Df Sum of Sq 1 0.004 1 0.006 1 1 1 1 1.760 2.049 2.980 26.272 RSS 23.302 23.304 23.298 25.058 25.347 26.279 49.570 AIC -26.174 -26.170 -24.182 -22.541 -21.968 -20.163 11.568

- Illiteracy - Income <none> - Population - Frost - HS.Grad - Murder

Step: AIC= -26.17 Life.Exp ~ Population + Income + Murder + HS.Grad + Frost Df Sum of Sq 1 0.006 1 1 1 1 1.887 3.037 3.495 34.739 RSS 23.308 23.302 25.189 26.339 26.797 58.041 AIC -28.161 -26.174 -24.280 -22.048 -21.187 17.457

- Income <none> - Population - Frost - HS.Grad - Murder

Step: AIC= -28.16 Life.Exp ~ Population + Murder + HS.Grad + Frost Df Sum of Sq <none> - Population 1 2.064 - Frost 1 3.122 - HS.Grad 1 5.112 RSS 23.308 25.372 26.430 28.420 AIC -28.161 -25.920 -23.876 -20.246 32

- Murder

34.816

58.124

15.528

Call: lm(formula = Life.Exp ~ Population + Murder + HS.Grad + Frost, Coefficients: (Intercept) Population 7.103e+01 5.014e-05

data = statedata)

Murder -3.001e-01

HS.Grad 4.658e-02

Frost -5.943e-03

###Utilizamos stepAIC de la librer~a MASS A library(MASS) data(state) statedata = data.frame(state.x77,row.names=state.abb,check.names=T) g = lm(Life.Exp ~ ., data=statedata) stepAIC(g) #Se obtiene el mismo resultado.

4.11.

Algunos ejemplos

Terminamos el tema con algunos ejemplos. Nota de R 29 Son unos datos sobre el abuln. Es un molusco. Se trata de predecir o su edad a partir de una serie de caractersticas fsicas. Los datos se pueden encontrar en http://www.liacc.up.pt/ ltorgo/Regression/DataSets.html. La edad del abaln se calcula habitualmente cortando la concha y contando el o nmero de anillos utilizando un microscopio. Es una tarea bastante laboriosa. Se u pretende predecir la edad del animal utilizando distintas medidas que son ms fciles a a de obtener. Vemos cmo quitando un par de observaciones con un leverage alto el ajuste o mejora. #Regresin mltiple o u x= read.table(file="../data/abalone.dat",sep=",") attach(x) xnam <- paste("V", 1:8, sep="") (fmla <- as.formula(paste("y ~ ", paste(xnam, collapse= "+")))) y = log(x[,9]) y.fit = lm (fmla,data=x) summary(y.fit) plot(y.fit) x=x[-2052,] attach(x) 33

xnam <- paste("V", 1:8, sep="") (fmla <- as.formula(paste("y ~ ", paste(xnam, collapse= "+")))) y = log(x[,9]) y.fit = lm (fmla,data=x) summary(y.fit) plot(y.fit) x=x[-1418,] attach(x) xnam <- paste("V", 1:8, sep="") (fmla <- as.formula(paste("y ~ ", paste(xnam, collapse= "+")))) y = log(x[,9]) y.fit = lm (fmla,data=x) summary(y.fit) plot(y.fit)

Nota de R 30 (Fichero notaR140) Se trata de unos datos utilizados para reducir costes de produccin. En concreto se pretende valorar el consumo de agua o en una fbrica. Se tiene el consumo de agua en distintos meses (en galones) como a variable respuesta. Las variables predictoras seran la temperatura media en el mes, la produccin (en libras), nmero de das que ha funcionado la fbrica durante ese o u a mes, nmero de personas trabajando. Los datos han sido obtenidos en la pgina u a http://www.statsci.org/data/general/water.html.

x=read.table(file="../data/agua.txt",header=T) attach(x) a.lm = lm(agua ~ temperatura + produccion + dias + personas) summary(a.lm) #Introducimos un trmino cuadrtico y otro cbico en la produccin. e a u o b.lm = lm(agua ~ temperatura + poly(produccion,3) + dias + personas) summary(b.lm) #Diagnstico del modelo o plot(a.lm) #Intervalo de confianza para observaciones predict(a.lm,interval="prediction") #Intervalo de confianza para la media predict(a.lm,interval="confidence")

34

Nota de R 31 (Fichero notaR141) Las variables son las siguientes: Variable Description M percentage of males aged 14-24 So indicator variable for a southern state Ed mean years of schooling Po1 police expenditure in 1960 Po2 police expenditure in 1959 LF labour force participation rate M.F number of males per 1000 females Pop state population NW number of nonwhites per 1000 people U1 unemployment rate of urban males 14-24 U2 unemployment rate of urban males 35-39 GDP gross domestic product per head Ineq income inequality Prob probability of imprisonment Time average time served in state prisons Crime rate of crimes in a particular category per head of population Se pretende predecir la variable Crime a partir de las dems. Se proponen dos a modelos y se ve que no hay diferencias signicativas entre ellos. x= read.table(file="../data/uscrime.txt",header=T) attach(x) crime.lm = lm(Crime ~ M + So + Ed + Po1 + Po2 + LF + M.F + Pop + NW + U1 + U2 + GDP + Ineq + Prob + Time) summary(crime.lm) crime.lm2 <- lm(Crime~M+Ed+Po1+U2+Ineq+Prob)

summary(crime.lm2) plot(crime.lm2) #Hay diferencias significativas entre los modelos? anova(crime.lm,crime.lm2)

35

36

Cap tulo 5

Anlisis cluster a
En este tema vamos a tratar lo que en la literatura estad stica recibe el nombre de anlisis cluster 1 o, en mejor castellano, anlisis de conglomerados. En la literatura a a de Inteligencia Articial se utiliza la expresin clasicacin no supervisada. Tenemos o o una muestra de observaciones multivariantes de dimensin d. Qu pretendemos o e hacer con ellos? Encontrar grupos. Muy breve la respuesta pero: qu son grupos? e Imaginemos una imagen area ja de un patio de un colegio. En esta imagen los e datos son las posiciones de los ni os. Se agrupan los ni os formando grupos o n n todos estn jugando con todos y los grupos son una consecuencia pasajera del juego a (delanteros y defensas que aparecen agrupados en un ataque)? Parece claro y simple el problema. S lo parece. Qu es un grupo? Cmo , e o deno un grupo? Cuntos grupos distingo en los datos? Estamos viendo el efecto a del ruido o realmente hay una estructura debajo que la vemos en un entorno con ruido. Qu quiere decir encontrar grupos? Se trata de clasicar las observaciones en e grupos de modo que las observaciones de un mismo grupo sean lo ms similares que a podamos y que los grupos entre s sean muy distintos. El n mero de procedimientos u que se han propuesto en la literatura es muy grande. La mayor parte de ellos no tienen un modelo probabil stico debajo, no son procedimientos basados en modelo. Son mtodos que esencialmente utilizan el concepto de proximidad. Valoran de distintas e formas lo prximos, lo cercanos que estn los puntos, dentro de un mismo grupo o a y entre distintos grupos. Es pues, el primer punto a tratar: cmo cuanticamos o lo cerca o lejos que estn los distintos puntos? En la seccin 5.1 nos ocupamos de a o este punto. Tambin ser necesario, como veremos en el tema, valorar cuando dos e a conjuntos de puntos son ms o menos parecidos, proximos, similares. En la misma a seccin nos ocupamos de ello. Supongamos que ya hemos clasicado en distintos o grupos. Hemos tenido xito al hacerla? Cuando tenemos un anlisis discriminante e a tenemos una muestra donde sabemos a qu grupo pertenece el individuo y dnde lo e o hemos clasicado. Esto nos permit valorar si nuestro procedimiento clasica bien a o no. Aqu no vamos a tener esta referencia que nos da la muestra de entrenamien to. Cmo valorarlo? Un concepto conocido por silueta y debido a Rousseeuw [10] o nos va a servir para ello. No es ni tan simple ni tan satisfactorio como en anlisis a discriminante (como es de esperar si tenemos menos informacin para trabajar). Lo o estudiamos en la seccin 5.4. o Entre los muchos procedimientos de obtener los grupos a partir de los datos, los ms utilizados son dos tipos: procedimientos jerrquicos y mtodos de partia a e cionamiento. De los jerrquicos nos ocupamos en la seccin 5.2. El mtodo de las a o e k-medias y el mtodo de las k-mediodes (el castellano como siempre es muy sufrido e
1 Por

cierto que la palabra cluster no existe en castellano

pues no existe la palabra) son mtodos de particionamiento y los tratamos en la e seccin 5.3. o Empezamos viendo un conjunto de datos que nos sugieran el problema y cmo o tratarlo. Nota de R 32 (Fichero notaR109) Generamos dos tres muestras correspondientes a distribuciones bivariates normales. La matriz de covarianzas vamos a suponer que es la matriz identidad. Los vectores de medias son 1 = c(1, 1), 2 = c(3, 3) y 2 = c(7, 7). Es resumen un vector Xi Nd (i , I22 . Vamos a generar cien datos de cada grupo. Vamos a utilizar la librera [? ] para simular las distintas normales bivariantes. Como podemos ver en la gura 5.1. Se ve que hay tres grupos pero estos no estan muy claramente delimitados. Nosotros no disponemos de esta informacin. o Conocemos los valores que componenten los vectores de datos pero no conocemos a qu grupo podra pertenecer una observacin de las consideradas. Tampoco tenemos e o porqu tener prejado el nmero de cluster. Los datos son articiales pero ilustra e u perfectamente el tipo de datos y lo que pretendemos hacer con ellos. library(mvtnorm) limite.x = c(-1,8) limite.y = limite.x x1= rmvnorm(n=100, mean=c(1,1)) x2= rmvnorm(n=100, mean=c(3.3,4.1)) x3= rmvnorm(n=100, mean=c(6,5.5)) if(dib) postscript(file="fig109a.ps",horizontal=F) plot(x1,xlim=limite.x,ylim=limite.y) points(x2,pch=2) points(x3,pch=3) if(dib) dev.off()

Una referencia muy adecuada que se puede consultar es el texto de [10]. Cualquier texto de reconocimiento de patrones es adecuado. En lo que sigue vamos a basarnos fundamentalmente en la librer cluster [12]. a

5.1.

Disimilaridades

Empezamos tratando el problema de cuanticar el grado de proximidad, de similaridad entre dos puntos en el espacio de dimensin d. Tradicionalmente este o tema en Matemticas se ha formalizado a travs del concepto de distancia o mtrica. a e e Una mtrica es una funcin que a cada par de puntos x, y Rd le asocia un valor e o positivo de modo que cuando mayor es ms distantes son, ms alejados estn. Como a a a siempre la formalizacin matemtica de un concepto intuitivo ha de ser prudente o a y pedir que se veriquen ciertos axiomas que resulten razonables y generalmente admisibles. En concreto la funcin d denida en el espacio producto Rd Rd se dice o que es una mtrica si verica: e No negativa d(x, y) 0. Un punto dista 0 de s mismo d(x, x) = 0. Simetr d(x, y) = d(y, x). a 2

x1[,2] 0 2

2 x1[,1]

Figura 5.1: Desigualdad triangular d(x, z) d(x, y) + d(y, z), para todo x, y, z Rd . Las distancias ms habitualmente utilizadas en anlisis cluster son la distancia a a eucl dea y la distancia de Manhattan. Si tenemos dos vectores u e v entonces la distancia eucl dea se dene como
d

d(u, v) =

k=1

(uk vk )2 ,

(5.1)

con u, v Rd . La distancia de Manhattan viene dada por


d

d(u, v) =
k=1

|uk vk |.

(5.2)

Las distancias eucl dea y de Manhattan son adecuadas cuando trabajamos con variables continuas y que adems estn en una misma escala. Notemos que cada una a e de las componentes del vector pesan igualmente. Si tenemos variables que no estn a igualmente escaladas estas distancias pueden pesar ms unas variables que otras no a por lo diferentes que sean entre los individuos sino simplemente por su escala. Nota de R 33 (Fichero notaR110) En este ejemplo generamos datos 100 datos con cada una de tres distribuciones normales. La matriz de covarianzas es la misma y cambiamos el vector de medias. Se utiliza la funcin dist que permite utilizar o ms distancias. En particular, utilizamos la distancia eucldea y la distancia de a Manhattan. Repetimos el clculo utilizando la funcin daisy de la librera cluster. a o Tambin calculamos las matrices de distancias para las datos agriculture y pluton. e 3

library(mvtnorm) x1= rmvnorm(n=100, mean=c(1,1)) x2= rmvnorm(n=100, mean=c(3.3,4.1)) x3= rmvnorm(n=100, mean=c(6,5.5)) x = rbind(x1,x2,x3) #Distancia eucldea dist(x,method = "euclidean") #Distancia de Manhattan dist(x,method = "manhattan") #Con la funcin daisy de cluster o library(cluster) daisy(x, metric = "euclidean", stand = FALSE) daisy(x, metric = "manhattan", stand = FALSE) data(agriculture) daisy(agriculture, metric = "euclidean", stand = FALSE) data(pluton) daisy(pluton, metric = "euclidean", stand = FALSE)

Con mucha frecuencia nos encontramos trabajando con variables que a n siendo u continuas estn medidas en escalas muy diversas o bien tenemos variables que son a continuas, otras que son binarias, otras categricas con ms de dos categor o bien o a as variable ordinales. En resumen, todos los posibles tipos de variables simultneamena te considerados. Es lo habitual. Una variable binaria la codicamos habitualmente como 1 y 0 indicando presencia o ausencia del atributo que estemos considerando. En una variable categrica la codicacin es completamente arbitraria y por lo tanto o o no tiene sentido la aplicacin de una de estas distancias. o Todo esto plantea el hecho de que no es recomendable, ni tampoco fcil, en un a banco de datos con distintos tipos de variables considerar una mtrica o distancia, e esto es, algo que verique las propiedades anteriores. Son demasiado exigentes estas propiedades. Lo que se hace es proponer medidas entre los vectores de caracter sticas que tienen algunas de las propiedades y son, adems, razonables. Por ello no a hablaremos, en general, de una distancia o una mtrica, sino de una medida de e disimilaridad. Finalmente, valores grandes estarn asociados con vectores de caraca ter sticas que tienen una mayor diferencia. Se han propuesto distintas medidas de disimilaridad entre variables cualitativas (binarias simtricas o asimtricas, cualie e tativas, ordinales) y cuantitativas. En lo que sigue comentamos con alg n detalle u la que lleva la funcin daisy de la librer cluster. Es una opcin muy genrica y o a o e razonable. Vamos a ir viendo cmo se plantea el problema cuando solo tenemos un tipo de o variable no cuantitativa y nalmente veremos como combinarlo todo en una sola medida de disimilaridad. Supongamos descrita al individuo o caso mediante d variables binarias. Es natural construir la tabla de contingencia 2 2 que aparece en la tabla 5.1 donde las las corresponden con el individuo i y las columnas con el individuo j. Estamos denotando por A el n mero de variables en que coinciden los dos indiviu duos con un valor uno de la variable correspondiente, con B lo mismo pero valiendo 4

Cuadro 5.1: Conteos asociados a dos casos descritos por variables binarias 1 0 1 A C A+C 0 B D B+D A+B C+D d=A+B+C+D

cero la correspondiente variable. El total de variables es d = A + B + C + D. Basndonos en esta tabla se pueden denir distintas medidas de disimilaridad. a Vamos a considerar una para el caso de variables binarias simtricas y otra para e variables no simtricas. Una variable binaria es simtrica cuando las dos categor e e as que indica son intercambiables, cuando no tenemos una preferencia especial en qu e resultado lo codicamos como 1 y qu resultado codicamos como 0. Un ejemplo e frecuente es el sexo de la persona. Si las variables son todas binarias simtricas es e natural utilizar como disimilaridad el coeciente de acoplamiento simple denido como B+C A+D d(i, j) = =1 . A+B+C +D A+B+C +D La interpretacin de esta medida de disimilaridad es simple. Dos individuos son o tanto ms disimilares cuantas ms variables binarias tienen distintas. Notemos que a a la presencia o ausencia de un atributo tienen el mismo peso. Supongamos que las variable que describen al individuo son binarias asimtrie cas. Ejemplos de esto pueden ser la presencia o ausencia de un atributo muy poco frecuente. Por ejemplo, tener o no tener sida. Dos personas que tienen el sida, tienen ms es com n, estn ms prximas, que dos personas que no lo tienen. Supongamos a u a a o que codicamos el atributo menos frecuente como 1 y el ms frecuente como 0. Est a a claro que un acoplamiento 1-1 o acoplamiento positivo es ms signicativo que un a acoplamiento negativo o acoplamiento 0-0 por lo que A, n mero de acoplamientos u positivos, ha de tener ms peso que d o n mero de acoplamientos negativos. El ms a u a conocido es el coeciente de Jaccard que se dene como d(i, j) = A B+C =1 . A+B+C A+B+C

Vemos que simplemente nos olvidamos de los acoplamientosnegativos. Para variables categricas donde hay ms de dos categor (color de pelo, eso a as tado civil, tipo de alimentacin, etc). En este caso, la medida de disimilaridad ms o a utilizada es el n mero de variables en las que no coinciden los dos individuos, es u decir, du d(i, j) = , d donde d es el n mero de variables y u es el n mero de variables en las que coinciden u u los dos individuos. Finalmente veamos cmo tratar las variables ordinales. Lo que haremos para o variables de este tipo es transformarlas al intervalo [0, 1]. Si xij denota la j-sima e variable del i-simo individuo entonces consideramos la transformacin e o yik = xik 1 Mk 1

siendo 1, . . . , Mk los valores que puede tomar la j-sima variable ordinal. Lo que e estamos haciendo con este procedimiento es transformar la variable ordinal es una variable numrica con una escala com n. En la medida en que el n mero de catee u u gor sea mayor esta transformacin tendr ms sentido. as o a a 5

Hemos visto cmo tratar cada tipo de variable aisladamente. El problema es o combinar todas ellas en una sola medida de disimilaridad. La funcin daisy de o cluster utiliza la siguiente medida. d(i, j) =
(k) (k) (k) d k=1 ij dij , (k) d ij k=1

(5.3)

donde ij vale uno cuando las medidas xik y xjk no son valores faltantes y cero e en otro caso. ij vale 0 cuando la variable k es binaria asimtrica y tenemos entre los individuos i y j un acoplamiento 0-0. El valor dij es lo que contribuye a la disimilaridad entre i y j la variable f . Si la variable k es binaria o categrica entonces o (k) dij es denida como dij = 1 si xik = xjk y 0 en otro caso. Si todas las variables son categricas entonces 5.3 nos da el n mero de acoplamientos o u del total de pares disponibles, en denitiva, el coeciente de acoplamiento simple. Si todas son variables binarias simtricas entonces obtenemos otra vez el coeciente de e acoplamiento simple. Si las variables son binarias asimtricas entonces obtenemos e el coeciente de Jaccard. Si una variable es numrica entonces e dij =
(k) (k) (k) (k)

|xik xjk | Rk

siendo Rk el rango de la variable f dado por Rk = mx xhk m xhk a n


h h

donde h var entre todos los individuos con valor no faltante de la variable k. a Cuando todas las variables con las que trabajamos son numricas la medida de e disimilaridad es la distancia de Manhattan. Nota de R 34 (Fichero notaR111) Un ejemplo de clculo de la medida de dia similaridad propuesta en 5.3 con la funcon daisy para los datos ower. En estos datos tenemos todos los tipos de variables posibles.

library(cluster) help(flower) daisy(flower, type = list(asymm = 3))

Tenemos una matriz de dimensin n n siendo n el n mero de datos que recoge o u las disimilaridades entre los distintos individuos de la muestra. A partir de esa matriz vamos a trabajar en los procedimientos jerrquicos. a Con esta matriz podemos medir la disimilaridad que hay entre los elementos originales de la muestra. Vamos a necesitar en lo que sigue poder medir distancias entre distintos conjuntos disjuntos de individuos. Sean A y B dos subconjuntos disjuntos del conjunto de ndices de la muestra {1, . . . , n}. Cmo podemos denir o disimilaridades partiendo de las disimilaridades entre datos individuales d(i, j)? Se han propuesto muchos procedimientos. Si denotamos la disimilaridad entre A y B como d(A, B) entonces las disimilaridades ms habitualmente utilizadas son las a siguientes: 6

Enlace simple La disimilaridad entre los dos grupos es el m nimo de las disimilaridades entre las observaciones de uno y de otro. Tomamos la disimilaridad de los objetos que ms se parecen en uno y otro grupo. a d(A, B) =
aA,bB

m n

d(a, b)

Enlace completo Ahora tomamos como disimilaridad entre los grupos como el mximo de las disimilaridades, en denitiva, la disimilaridad entre los objetos a ms alejados o ms distintos. a a d(A, B) =
aA,bB

mx d(a, b) a

Promedio La disimilaridad es el promedio de las disimilaridades entre todos los posibles pares. 1 d(A, B) = d(a, b) |A| |B|
aA,bB

donde |A| es el cardinal del conjunto A. Es importante notar que solamente necesitamos conocer las disimilaridades entre los individuos para poder calcular las disimilaridades entre grupos de individuos. En la siguiente seccin nos vamos a ocupar de los mtodos jerrquicos en los o e a cuales es fundamental el procedimiento que elijamos para calcular distintas entre grupos.

5.2.

Cluster jerrquico a

La idea de estos procedimientos es construir una jerarqu de particiones del a conjunto de ndices. Sea {1, . . . , n} el conjunto de ndices que indican a las distintas observaciones o individuos de nuestro banco de datos. Supongamos que {C1 , . . . , Cr } es una particin de este conjunto de o ndices, es decir: Ci {1, . . . , n}; son disjuntos dos a dos, Ci Cj = si i = j con i, j = 1, . . . , n y r Ci = {1, . . . , n}. Dada una partii= cin del conjunto de o ndices podemos calcular la matriz r r que en la posicin o (i, j) tiene la disimilaridad entre el conjunto Ci y Cj , d(Ci , Cj ) seg n alguno de los u procedimientos antes indicados. Veamos los procedimientos jerrquicos aglomerativos. En estos procedimientos a vamos a iniciar el agrupamiento con la particin: Ci = {i} con i = 1, . . . , n, es o decir, cada grupo es un individuo. En cada iteracin vamos agrupando el par de o conjuntos (elementos de la particin que tengamos en esa iteracin) que estn ms o o e a prximos seg n la disimilaridad entre grupos que estemos utilizando. El proceso o u contin a hasta que tengamos un unico grupo. u Un esquema algor tmico del procedimiento indicado puede ser el siguiente. Paso 0 Tenemos grupos unitarios formados por cada una de las observaciones. Tenemos pues una particin inicial Ci = {i} con i = 1, . . . , n. En un principio, o cada dato es un grupo. Paso 1 Calculamos las disimilaridades entre los elementos de la particin. Para ello o utilizamos cualquiera de los procedimientos antes indicados. Paso 2 Agrupamos los dos conjuntos de la particin ms prximos y dejamos los o a o dems conjuntos igual. Tenemos ahora Ci = {i} con i = 1, . . . , k. a Paso 3 Si tenemos un solo conjunto en la particin paramos el procedimiento. o 7

Paso 4 Volvemos al paso 1. Hay una representacin grca muy utilizada para describir los resultados de o a un cluster jerrquico aglomerativo como el que acabamos de describir. Esta reprea sentacin tiene el nombre de dendograma. En el dendograma se va mostrando o a qu valor de la medida de disimilaridad se produce la unin de los grupos y sie o multneamente qu grupos se estn uniendo para esa disimilaridad. Tambin nos a e a e permite una valoracin rpida de cuntos grupos puede haber en el banco de datos. o a a Simplemente trazando una linea horizontal a la altura en que tengamos el n mero u de grupos que pensamos que puede haber. Nota de R 35 (Fichero notaR113) Aplicamos un procedimiento de particionamiento de las k-medias con el algoritmo de Hartigan-Wong [8]. Vemos que como resultado tenemos la clasicacin nal de cada individuo en un grupo, el vector de o medias de cada grupo que son los centros de los grupos. Como medida de lo compactos que son los grupos encontrados tenemos tambin la suma de cuadrados de cada e grupos. Notemos que la suma de todos estos cuadrados es la que hemos minimizado imponiendo simplemente el nmero total de grupos. u x=read.table("..//data//descriptores.txt") y = x[,2:ncol(x)] #Aplicamos k-medias con algoritmo de Hartigan-Wong y.km = kmeans(y,centers=5,iter.max=100) #Clasificacin de los primeros datos o y.km$cluster[1:10] #Centros de los clusters encontrados y.km$cluster[1:10] #Sumas de cuadrados dentro de cada grupo y.km$withinss #Tama~o de los clusters n y.km$size

Un procedimiento jerrquico aglomerativo tiene inters cuando el banco de datos a e no tiene muchos individuos. En otro caso es muy dif de interpretar un dendocil grama o de seleccionar el n mero de grupos que hay. En todo caso lo hemos de ver u como un anlisis exploratorio para decidir el n mero de grupos y posteriormente a u utilizar alg n mtodo de particionamiento como los que vamos a ver. u e

5.3.

Mtodos de particionamiento e

Suponemos ahora que tenemos una idea de cuntos grupos hay. Posiblemente a hemos realizado un anlisis jerrquico previo con todos los datos o, si eran muchos, a a con una seleccin aleatoria de los datos. Tenemos pues una idea de cuntos grupos o a tendremos que considerar. Obviamente podemos luego evaluar los resultados modicando el n mero de grupos. En principio, vamos a suponer que jamos el n mero u u de grupos a considerar. Suponemos pues que sabemos el n mero de grupos y lo u denotamos por k. 8

5.3.1.

Mtodo de las k-medias e

El primer procedimiento que vamos a ver es el mtodo de las k-medias (que por e alguna extra a razn en la literatura de Inteligencia Articial se le llama de las n o c-medias lo que demuestra que cada persona copia a sus amigos o, simplemente, conocidos). Supongamos que tenemos C1 , . . . , Ck una particin de {1, . . . , n}. Un o modo bastante natural de valorar la calidad de del agrupamiento que la particin o nos indica ser simplemente considerar la siguiente funcin. a o
k

d(xj , xCi )2 ,
i=1 jCi

(5.4)

donde d() denota aqu la distancia eucl dea y xCi = 1 |Ci | xj ,


jCi

(5.5)

es el vector de medias del grupo cuyos ndices estn en Ci . Una particin ser tanto a o a mejor cuanto menor sea el valor de la funcin dada en 5.4. El procedimiento de o agrupamiento de las k-medias simplemente se basa en elegir como particin de los o datos aquella que nos da el mnimo de la funcin objetivo considerada en ecuacin o o 5.4. Notemos que en muchos textos se hablan del algoritmo de las k-medias y se identica con un procedimiento concreto para encontrar el m nimo de la funcin. o Aqu entendemos el procedimiento como la minimizacin de la funcin objetivo. o o De hecho, R ofrece hasta cuatro posibles procedimientos de los muchos que cabe proponer. Hay que diferenciar claramente el procedimiento del mtodo de aplicacin e o del mismo, del mtodo de obtencin de dicho m e o nimo. Es importante darnos cuenta de que el procedimiento que acabamos de ver est a basado en la utilizacin de la distancia eucl o dea y en que, dado un grupo, podemos calcular el vector de medias y esto solo lo podemos hacer si todas las variables son cuantitativas. Es un procedimiento que funciona muy bien con grandes vol menes u de datos.

5.3.2.

Particionamiento alrededor de los mediodes

Y si no podemos calcular el vector de medias? Y si no tiene sentido calcular el vector de medias? Cmo promediar dos conguraciones de puntos distintas? Cmo o o promediamos dos formas distintas descritas numricamente? Cuando el concepto de e promedio aritmtico no tiene sentido podemos generalizar el procedimiento anterior e y hablar de (perdn por el neologismo) de k-mediodes (que Dios nos perdone!). o La idea ahora es sustituir esos centros calculados como vectores de medias de los individuos de un mismo grupo por individuos bien centrados, por individuos t picos, que sustituyan a las medias. Supongamos que tomamos k individuos de la muestra que denotamos por mi con i = 1, . . . , k. Particionamos la muestra en k grupos de modo que el grupo Ci est formado por los individuos ms prximos a mi que a cualquier otro mj con a a o j = i, Ci = {l : d(l, i) = m d(l, j)}. n
j=i

Consideremos la siguiente cantidad:


k

d(j, mi ).
i=1 jCi

(5.6)

En el mtodo de particionamiento alrededor de los mediodes nos planteamos ene contrar las observaciones m1 , . . . , mk que minimizan el valor dado en la ecuacin o 5.6. Nota de R 36 (Fichero notaR114) Aplicamos a los datos descriptores (descriptores de una base de datos de imgenes digitales) un procedimiento de k-mediodes a con el mismo nmero de grupos que utilizamos en 35. u x=read.table("..//data//descriptores.txt") y = x[,2:ncol(x)] y.med = pam(y,5) y.med$medoids

5.4.

Silueta

Veamos cmo se construye la silueta. Para cada objeto i, sea A el cluster al cual o lo ha asignado el procedimiento cluster que empleamos y calculamos a(i) la disimilaridad media de i con todos los dems individuos del grupo A. Obviamente estamos a asumiendo que A contiene al menos otro objeto. Consideremos ahora un cluster C diferente de A y denamos d(i, C) como la disimilaridad media de i con los objetos de C. Despus de calcular d(i, C) para todos los clusters C = A, seleccionamos el e que tiene el m nimo valor: b(i) = m d(i, C). n
C=A

El cluster B donde se alcanza este m nimo, es decir, d(i, B) = b(i) se le llama vecino del objeto i. Denimos s(i) como s(i) a(i) si a(i) < b(i), b(i) = 0 si a(i) = b(i), b(i) = 1 si a(i) > b(i). a(i) = 1 (5.7) (5.8) (5.9)

Esto se puede expresar en una unica ecuacin como o s(i) = b(i) a(i) . mx{a(i), b(i)} a

En el caso en que el cluster A contenga un unico objeto no est muy claro cmo a o denir a(i). Tomaremos s(i) = 0 que es una eleccin arbitraria. Se comprueba con o facilidad que 1 s(i) 1 para cualquier objeto i. Para interpretar el signicado de s(i) es bueno ver los valores extremos. Si s(i) es prximo a uno signica que a(i) es mucho menor que b(i) o lo que es lo mismo, o que el objeto i est bien clasicado pues la disimilaridad con los de su propio grupo a es mucho menor que la disimilaridad con los del grupo ms prximo que no es el a o suyo. Un valor prximo a cero signica que a(i) y b(i) son similares y no tenemos o muy claro si clasicarlo en A o en B. Finalmente un valor de s(i) prximo a 1 o signica que a(i) es claramente mayor que b(i). Su disimilaridad media con B es menor que la que tiene con A. Estar mejor clasicado en B que en A. No est a a bien clasicado. 10

Cuadro 5.2: Silueta media y estructura en un conjunto de datos SC 0,71 1,00 0,51 0,70 0,26 0,50 0,25 Interpretacin o Fuerte estructura Estructura razonable Estructura dbil. Probar otros mtodos e e No se encuentra estructura

Los valores de s(i) aparecern representados para cada cluster en orden decrea ciente. Para cada objeto se representa una barra horizontal con longitud proporcional al valor s(i). Una buena separacin entre grupos o cluster viene indicada o por unos valores positivos grandes de s(i). Adems de la representacin grca se a o a proporciona un anlisis descriptivo. En concreto la media de los valores de la silueta a dentro de cada cluster y la media de la silueta para todo el conjunto de datos. La clasicacin ser tanto mejor cuanto mayor sean estos valores medios. De hecho, se o a puede decidir el n mero de grupos en funcin del valor medio de las silueta sobre u o toda la muestra. Vamos probando distintos n meros de grupos y nos quedamos con u el n mero que nos da el mximo dado por u a SC = mx s(k). a
k

(5.10)

Cundo podemos decir que hay estructura de grupos en los datos que estamos a analizando? Experiencias con datos sugieren la tabla 5.2. Nota de R 37 (Fichero notaR115) Utilizamos los datos descriptores. Hemos aplicado una particionamiento alrededor de los mediodes con cinco grupos. Hacemos una descriptiva de la silueta obtenida en la clasicacin utilizando la funcin o o summary. Vemos que los resultados son realmente malos. No hay estructura cluster de ningn tipo. Tambin podemos utilizar la representacin grca de la silueta que u e o a aparece en la gura 5.2. Nuevamente se aprecia que no es adecuado el anlisis que a hemos realizado.

x=read.table("..//data//descriptores.txt") y = x[,2:ncol(x)] y.med = pam(y,5) #Hacemos la silueta y.si = silhouette(y.med) summary(y.si) > summary(y.si) Silhouette of 5773 units in 5 clusters from pam(x = y, k = 5) : Cluster sizes and average silhouette widths: 1130 385 1694 1444 1120 0.29803506 0.36812793 0.14175502 0.29011448 0.09241103 Individual silhouette widths: Min. 1st Qu. Median Mean 3rd Qu. Max. -0.3259 0.1022 0.2019 0.2150 0.3231 0.5523

11

#y la representamos grficamente a plot(y.si) #fig115a

Silhouette plot of pam(x = y, k = 5)


n = 5773 2127 1150 225 5499 2401 4638 1473 4083 3735 4128 4945 5105 3233 2101 5701 3346 5233 772 1508 2234 4880 1533 5423 213 2657 4176 5217 3227 2327 1197 3688 751 3053 662 2350 2515 2416 4012 1276 5757 3449 2092 321 450 1869 2185 2468 3883 1900 1847 4174 2969 4002 796 2317 2710 3633 5401 3798 2093 2600 1165 723 1967 2137 821 134 568 1352 1433 2615 3276 3719 4589 5309 3545 5325 2505 5684 5640 3022 3357 3452 431 2404 2867 4385 5047 2368 2916 5585 683 4220 995 4692 803 1834 4488 5712 1985 4347 97 897 1234 3451 5255 355 2888 5747 2794 1408 4657 4773 3379 4819 2290 99 965 1601 5744 2652 2096 5210 2492 1377 510 1182 2715 4452 5216 4995 740 2800 1690 3064 2531 3426 5404 1863 3538 360 340 620 766 5398 2444 4323 3662 3004 5145 2542 5380 4835 2043 2821 153 1760 2658 3607 4743 1668 2334 4672 2686 1777 3266 1192 3831 3857 4615 4725 254 3270 234 1041 3361 4086 5514 1783 785 2961 4465 551 4189 27 585 4777 5465 4838 277 781 1174 36 3120 1296 5434 1075 4613 973 1013 3666 4908 148 5206 1693 721 3505 39 1323 2563 1516 518 4684 4445 2650 777 720 1930 2064 2276 2195 11 571 3658 1398 929 3291 92 5402 5246 3651 5248 466 365 5601 276 4671 196 1009 1695 2133 2209 4077 4690 5579 543 1644 1939 2895 2534 3744 2841 1151 2640 1556 428 956 1048 1739 4231 4814 2737 5339 3294 4625 1058 1807 2227 4212 4645 2324 5753 1958 2859 2795 1306 293 1340 4751 143 2436 1753 3332 3143 2144 550 2860 634 3184 3237 462 4853 4904 4553 875 1221 1914 5018 5643 3694 451 2521 4118 4155 4384 5321 694 5682 2823 446 4664 1275 5203 5734 4935 3320 883 3490 4101 1791 120 4547 2166 5010 3685 3241 2601 5227 5260 5172 4776 2421 1879 887 4868 5005 5496 4031 1816 2406 4983 1904 3318 1602 4539 1733 3368 4313 4496 5662 2063 1113 4239 2753 715 2811 96 640 467 1061 2748 869 3624 3153 483 845 2377 2420 2497 3029 3946 5197 1183 5687 5577 650 5721 4933 459 1899 1933 1970 3473 3680 4161 4603 3292 1417 1844 1898 2892 3205 5113 4604 1228 5642 3092 460 1520 813 3186 599 1833 874 5028 2066 4652 2861 3265 118 1056 4492 4094 4951 4543 2696 3115 3596 5739 2310 925 588 697 3864 104 3366 1281 3598 5503 4632 217 2230 81 5539 2055 1983 4767 2832 4060 1818 410 5726 731 3983 923 1087 4708 4132 4829 565 1562 3377 2644 655 53 657 4972 1274 3517 957 1976 5360 1092 4262 1655 2637 2656 422 470 1766 2330 2684 1249 2671 3210 3341 2782 5128 1383 1804 4681 130 312 486 945 3386 5480 2068 3295 3838 5241 3038 1106 1924 665 4453 3897 1811 3456 4716 1070 5304 3827 3168 4315 4282 5474 1096 3709 4366 5488 5022 488 3716 4025 4182 5479 107 1920 2512 262 3066 3850 4222 5476 600 1447 5281 1123 3043 2272 541 2966 1366 3576 3242 2088 1030 969 180 3937 2002 2004 4205 5633 3478 3333 247 5159 5498 3262 3609 598 4643 5287 2571 3917 4233 2415 2827 435 1442 779 787 2950 4053 475 3518 4943 403 4588 4032 1618 2391 1410 3727 4821 4505 2475 3692 3628 5745 2764 4051 2761 3493 1462 4642 5742 1120 2260 5351 1685 2441 2397 1305 154 3940 2252 454 4466 5313 3577 3419 1122 5600 2267 5161 1749 1235 5715 2312 1727 2357 280 2721 3981 5298 2793 4376 1999 3998 2115 2472 3892 3290 5475 4285 4614 4917 5544 3830 4433 5280 5505 3873 5723 4644 2666 4961 2226 4792 870 4074 2280 4906 5124 1926 5444 328 5099 5415 4363 440 1842 2858 5006 4992 5335 2611 4238 401 5083 175 361 1164 4427 383 94 981 3324 4253 2952 1376 2932 3536 5015 3163 5681 1085 4180 3235 3819 3824 5624 1231 2075 4191 2315 176 350 437 1099 5177 4202 3700 4744 5548 4255 2584 135 303 797 4236 1716 3677 5387 5200 2467 830 841 1583 2676 3188 4619 1321 211 2911 1982 2087 2558 2865 3083 5155 2098 3678 4194 2091 1579 3051 2900 2337 3555 1893 2331 3804 3475 108 1522 345 1282 1901 3084 35 2877 3400 1738 4544 4197 1955 255 1890 613 1531 928 1189 4710 3302 2810 268 3077 4676 2338 3715 2817 499 5235 4622 162 3259 2365 1636 614 1126 4844 2323 2962 3526 1315 2390 1020 4583 4196 1493 2017 2626 3219 1913 2871 1097 3995 5615 1654 1643 2112 3854 5566 4256 1719 2738 4745 5271 5129 1256 1724 1855 1880 2038 2198 5279 2287 5278 4517 1057 5348 4862 5728 4981 1295 3726 290 951 1138 4112 3169 4102 3160 1308 4497 3686 744 1354 5316 4827 3777 322 5024 4190 4227 4610 988 1049 2487 1786 2052 3766 5533 1241 5153 4068 4166 392 2182 2585 347 3603 3221 2933 5573 2915 1273 4939 4811 1972 2506 4221 5582 3634 1605 2427 5528 4500 2213 2030 2509 4910 2037 2703 954 4926 1912 2842 2015 1905 4924 4698 1675 2653 299 63 2375 3258 2957 2084 3360 427 3918 275 515 1373 1720 60 1 3314 1304 5020 3450 5329 2476 3615 4800 617 5526 2273 3537 3713 5111 1965 2478 3427 884 4869 4902 2135 3220 4923 2104 4415 3954 4484 2980 962 747 2270 1032 341 3093 5752 171 4753 4425 603 2884 5720 1391 1246 3175 5108 3742 4748 4063 528 3962 886 513 2837 5683 448 1486 2386 2999 1711 5122 105 5066 601 2354 3445 5225 1019 2894 3354 1021 1194 2352 2917 3858 3049 4009 4755 3752 3884 4024 572 4822 649 3839 1171 4984 2245 2051 1527 2541 3351 664 5109 4932 1497 1212 5049 3759 215 3156 2025 2269 3782 4599 580 5437 5056 2089 4294 1746 3121 2231 873 3635 1938 3119 916 4273 4985 4969 4786 5750 5372 898 3745 7 1389 48 3412 879 5513 1663 2744 3888 3891 5512 5679 1645 842 967 2543 3164 3991 863 2328 1470 2372 573 480 5422 2100 493 2083 2024 3540 3157 3 2443 3086 5722 5472 2798 734 1484 2023 5644 5045 329 4756 4789 2249 892 5268 1337 3279 2707 786 3648 4 4076 199 201 2221 1795 3335 20 5150 4787 377 3429 3762 1436 827 1839 1565 2457 3711 2128 1776 2108 1344 2173 3371 3963 4137 4228 1425 2608 204 819 1168 2926 912 346 4147 4381 5050 4382 1550 4563 4471 2042 4297 4403 4955 1866 4680 3618 586 677 921 2589 2695 3226 4357 5599 3118 3879 4473 4278 1135 1498 4317 4461 2706 2829 4788 5751 3919 281 3198 5716 537 2622 3355 3823 379 3298 3942 1581 4796 59 157 1177 1479 2187 3369 1642 2532 2152 260 3528 5661 558 88 4412 1328 4579 2426 5598 5310 2607 1996 1003 3783 172 5762 1729 5048 1547 2387 899 330 616 1832 4700 4719 3943 1455 2590 4694 1140 5336 2839 1125 2080 288 417 1541 1610 2680 3617 5447 5586 3378 3519 4324 1619 2304 3513 2776 3468 338 3903 2107 1641 4000 2787 5040 1624 4387 156 2729 3610 2593 5043 1268 4457 4269 2370 2665 1059 3541 1867 4380 4712 311 569 648 4266 5491 5576 2149 591 2429 3389 4450 258 5652 5019 1224 133 3548 5452 5267 497 232 65 2 1639 936 5118 5082 5714 5413 1004 654 1237 3965 2340 5002 776 4833 5525 742 3820 5670 294 2139 1449 2309 4591 5073 815 82 3223 596 1614 5664 3334 3535 5527 4601 8 283 2314 1468 3337 1166 824 4912 5550 926 4242 2852 2123 4048 4229 771 1186 4314 1734 1060 139 4683 2006 2145 1077 5426 3672 85 405 976 4893 2597 5732 5198 3484 2146 3912 4393 1590 2891 1667 2078 2604 1218 2215 3936 4607 2417 5738 3863 4531 2678 2618 1848 2645 4301 5168 4533 3842 880 1014 4216 1458 5346 5429 3482 5264 4978 3496 1584 2689 327 239 5079 334 1884 2673 458 2109 632 3502 3081 3137 4525 5425 3405 1621 3005 165 4153 881 5510 4831 3079 666 983 663 5039 3474 5657 4730 4075 4072 5580 2711 4623 1995 2934 5636 669 4842 2086 5477 1789 1503 4379 3664 4783 5293 5331 3171 3916 4260 127 729 5237 309 2777 5562 2346 2802 1894 2274 1022 2991 2526 4558 1981 1439 4934 1881 4170 3818 3281 3889 712 4816 246 1731 1973 4813 4341 836 1773 862 1806 474 711 5074 287 3902 4963 5261 3078 229 2224 5204 1055 4070 152 1665 575 3665 100 110 3428 2904 4351 3099 2202 4434 2364 2896 3208 3085 387 4863 1984 5297 5531 4707 70 5158 1891 933 4417 1029 4234 595 4090 4480 3756 333 5417 416 3213 5228 1765 2712 4577 433 23 2067 2205 641 3959 2766 142 2027 1219 3861 3252 1925 4279 5445 3572 2955 1051 1993 2011 5400 4232 3336 4336 4832 1367 4431 5169 5192 3920 2677 1513 4595 5635 4241 1961 3556 888 4654 5406 775 3407 2440 2792 5403 4959 3865 3676 4319 4659 4646 4527 3895 2446 3089 4550 2419 1759 4971 2570 4245 1443 2948 5077 1279 1240 2203 2158 3530 4172 146 1265 1318 2546 190 1998 3264 1656 3825 2872 576 5215 2218 4420 2853 556 2504 3811 1137 5438 2124 1012 5616 4905 5666 3993 5727 2990 317 4277 2759 4709 2184 4237 1817 3550 2778 621 93 52 653 3675 3098 1380 5394 1385 5014 408 4348 1580 4230 3172 2830 4442 2036 3613 4502 3470 124 1364 5175 2633 1283 2059 3476 3404 352 5478 5420 4798 74 3110 1712 5655 1575 914 1542 4795 2125 5133 5262 221 351 4114 5034 151 5725 3606 4121 1293 4594 5087 1613 5649 3328 4244 2995 3650 4287 2029 5340 557 4079 2569 1044 1065 864 3979 5396 725 4631 5567 1514 4405 4554 989 1960 1496 5672 2682 4116 4808 949 3978 2480 3460 769 3041 5182 4209 1989 1223 2402 5116 2856 3087 4087 996 4763 5171 998 3140 5538 1856 1713 538 2849 2683 4878 1500 5370 2369 2199 5698 3707 4110 1728 861 4165 5594 2649 319 1664 3652 2157 4154 4887 259 1017 1158 1994 2986 3329 4139 5173 1127 5564 4703 1779 3007 5731 4949 4361 2772 1069 5156 2662 4131 3527 1570 5223 773 4455 539 3432 2455 3195 2651 4215 3554 449 4965 4820 4248 3254 1721 461 5098 876 3418 4895 4704 5574 2743 4424 3297 2210 102 4658 3701 4362 1094 1368 1678 3562 3797 348 5211 2010 790 503 1530 3433 2874 798 5138 5620 5608 1124 3904 2940 2639 5162 4438 3947 84 2244 1287 5354 2977 220 2654 3589 15 4096 4286 3605 5584 4980 3243 5767 4181 1395 326 3515 235 5134 609 79 3578 2824 2366 4306 2498 1357 5626 5012 1686 2845 986 4894 1846 170 3967 5107 1674 1757 5207 150 1612 1861 5250 2341 4872 2394 1413 188 1175 5597 5381 5769 4611 5001 158 4689 4506 4462 4529 3096 3868 1490 3174 2412 2061 2050 1857 3161 4345 265 1606 2972 5448 1949 1705 582 67 4874 882 521 68 4299 3183 1853 2550 1400 4432 2937 5030 4775 3466 5362 2306 5549 4325 160 3533 4536 2713 2922 5665 3498 5430 1761 975 429 3108 1800 54 3206 4311 1756 3803 1482 2628 4691 181 261 555 1564 3812 3822 5591 5333 5383 966 306 4936 192 1510 1688 5596 4581 4697 5166 2507 5677 5157 197 536 924 4849 4250 5561 3789 808 816 3239 1220 3741 4095 336 2283 4629 1345 1708 3869 2362 3516 1507 5768 2586 4741 1722 2371 4441 406 526 889 1888 4396 5604 590 2079 4028 4803 5703 2482 397 2804 746 2277 3348 1929 4801 187 164 811 2919 2261 3646 1948 4856 5064 3422 3500 2572 2747 5455 5060 1222 1450 1501 980 4884 4556 4634 5249 3563 240 3571 2551 3059 1477 1431 4108 2595 5031 1788 4371 307 5188 2638 2489 639 3816 1671 4195 5518 4343 1028 4124 5495 5543 5764 5205 1830 839 2481 2883 3326 5754 1768 2090 2577 3034 4855 5276 2520 4592 2016 4901 2564 73 5622 1945 4941 250 858 2854 3908 553 3194 2614 1886 2732 3800 4586 5288 2956 2003 3813 1461 5658 2140 4185 131 4183 1320 2021 4903 2870 3147 3523 2461 735 2275 1053 1607 3280 5678 1262 2887 5450 643 3423 5029 978 4493 5282 3240 2619 4333 5000 2675 5222 1657 4206 3673 2869 1466 4585 3809 4014 2838 4331 4802 5675 1647 2028 3313 5208 4791 479 618 1226 4749 5017 2537 5184 1710 3319 1747 4997 3385 3338 1215 2967 3806 2996 2974 1361 198 285 3928 724 1411 2548 3068 4168 5414 2525 559 166 3732 1309 2005 3304 4304 4790 3681 5418 4512 3765 2496 529 5766 2316 5651 1420 5519 3860 3668 5560 628 1079 50 831 4449 5218 3574 163 4179 4152 3581 216 4041 676 3141 3620 3913 5456 2395 5305 1236 3106 2731 4062 1559 2606 1363 1149 4160 703 3724 177 1298 1809 2554 1145 1555 5611 3309 3595 4365 1966 3637 1700 2539 64 3192 2201 2428 4193 4909 3124 1205 226 3485 4036 5628 1453 3971 4459 1616 4778 3215 695 1199 4054 5730 1718 1557 3781 2669 4537 272 2936 4706 768 4479 4111 1943 4444 1781 2681 1025 1195 2180 1339 3170 5535 2921 3725 3112 1247 4938 3414 693 3080 2746 3980 5461 3179 2174 1184 3173 4167 3012 476 5072 206 1608 2294 1748 2175 5428 2250 4065 4410 203 4004 233 391 4481 5181 3076 2581 4794 248 3165 5523 5357 3107 2047 1511 2786 3435 2408 3395 1877 522 149 3667 4991 4889 210 4907 5540 3030 5588 963 1937 812 5471 4864 1603 2790 1485 4119 919 4633 4332 182 4837 1548 3504 3271 3638 4576 1230 3542 1100 1896 2345 2470 4207 269 1397 5502 1754 2105 5368 3364 1682 2716 1653 2545 5770 2373 3964 5605 4298 5674 2065 1350 689 4008 3814 2685 5115 4571 2605 940 2975 5302 3911 5032 5656 3738 651 508 3669 4188 4618 1034 5295 5763 2132 382 4421 1572 4397 4630 2164 1301 169 2178 3189 1684 1089 2833 3531 5484 3788 1917 4578 719 3267 1211 1414 3376 492 291 2750 2616 3345 193 3751 658 3612 4947 4034 1706 2335 395 3026 1416 5054 3656 4069 2111 1758 407 316 3008 2033 5692 5565 3546 5 1278 1248 5352 1036 1987 2828 2988 5119 278 2807 4662 5152 5164 185 3073 3071 2679 1694 2410 3582 1529 4198 5700 5468 1539 748 3278 561 4560 2755 3097 520 2281 1073 2053 3953 5578 4559 2071 3197 3046 3795 4039 4738 4548 4925 5645 4374 4456 4138 3367 4757 4175 4200 5096 3671 767 4596 5327 907 679 2102 563 147 4335 2116 2447 4661 1207 2238 2634 2150 5146 4309 2389 3769 2254 2044 5408 1897 2508 4049 3283 3793 3391 4109 4750 794 2973 3851 3977 5459 2905 3191 3394 1341 3050 546 1803 2594 4388 4608 1133 3495 4020 5706 570 3591 4126 4274 1822 5076 1139 4411 2805 1463 4532 4628 2189 3090 1836 2022 2188 4913 1180 1277 2567 356 5756 5482 754 4873 1050 1819 1670 4246 3915 1441 4475 2929 799 5773 1632 3411 2674 2799 106 818 1307 4346 809 1935 4866 5277 5163 1979 4950 3401 4728 3074 2170 4164 4637 3970 224 491 1269 2851 4383 1551 5090 3408 1594 2959 5407 4606 4852 2733 5224 4841 1845 4029 5178 2266 4877 469 3144 953 3463 4718 2902 4312 3344 2376 2843 4378 4171 4052 1495 3992 5639 1787 2329 1370 652 5142 2423 2736 5312 363 2960 3714 1217 3255 2803 4446 1627 911 14 578 4398 3749 4764 2110 872 78 123 2728 424 5038 4337 2727 612 3055 399 2903 4448 2978 5274 245 4148 577 627 1730 2348 3486 4177 5033 5314 4440 2951 4334 3300 984 4099 5291 3653 2740 4150 3082 3330 3881 452 2035 792 2773 5070 3025 2775 4729 4881 3331 3111 1502 5571 535 4156 270 4486 2503 3200 3722 681 3999 3129 4758 16 2901 4005 4106 5690 3927 5695 3190 2528 4057 3202 1597 1623 1744 1535 1068 1378 2318 2074 939 29 5044 671 789 1170 1284 2530 3261 1267 3218 514 4307 47 1118 2473 3036 1101 2785 583 4669 2197 1343 2749 4989 5114 5356 3930 4113 1736 3682 1906 4921 4805 5347 5319 802 1460 1480 562 4105 5065 1169 1144 3277 1883 917 1035 2897 2177 837 5412 3580 4426 1504 3960 1435 13 1524 2313 1326 5350 5375 2771 3521 266 2694 5522 587 3885 2591 3627 4300 5481 1950 3268 5619 2709 2997 4061 1110 3880 1412 332 2448 4178 4575 1843 3856 4826 685 380 32 2663 173 4982 3211 961 1147 4284 4355 5688 678 2664 1672 4999 3600 1941 1696 5149 38 1525 354 3631 3514 1971 893 2848 1161 1242 2484 3944 3000 668 5416 909 1399 2582 4211 3568 5094 2878 3553 5120 2359 972 2434 3048 783 5300 1146 4356 5392 848 1132 4839 4888 2797 622 3805 868 4258 670 1042 4636 4491 2466 86 4104 2379 5176 4267 5508 4514 4726 4107 4321 5003 4886 4271 699 2453 3303 4723 822 3203 2500 5627 3826 3296 230 4973 3552 12 4781 5069 1599 5330 2211 1095 1554 4975 1752 5485 2449 2660 2890 3492 3185 2113 37 4736 2592 3065 46 2265 3287 1289 4507 4208 4340 4033 4402 4476 1142 3534 1709 2976 2248 481 4084 1253 4570 1566 5084 4085 4666 370 4489 4952 5230 5219 5201 2240 2308 5103 4846 5760 5729 4957 5371 109 389 814 3246 2013 5583 501 3929 5504 817 25 2239 2631 3961 251 3573 2697 1681 990 1849 1388 810 3033 1723 2490 3212 1374 2690 3721 5238 4990 2767 1769 2722 4435 1860 4564 2971 1649 1214 3644 5490 2643 2968 4929 947 705 5592 4851 5369 2899 3899 5390 18 394 3632 4372 2171 2765 1456 4066 425 5421 71 5126 373 3773 4418 1648 2557 1571 602 3148 1574 527 1519 3697 5212 1489 1292 4900 2566 4173 1472 1585 4948 57 2219 3067 1015 4352 505 3898 3359 2770 2610 4650 3905 525 2931 3829 5337 1390 3840 1102 2129 3489 1793 1088 5266 1026 2339 3894 2046 5061 959 419 3951 5075 741 5251 5062 1074 3057 5136 5296 3387 5563 5180 2889 5377 4649 3002 202 971 4754 1854 3061 4942 5693 1578 3069 835 4804 2332 1772 5612 189 3232 4557 2302 44 1835 1988 2780 5289 2924 910 2517 2559 2220 3767 3491 69 3723 3996 3483 4549 5063 4252 3322 624 41 1523 5343 4339 871 91 2483 2630 1875 2702 4240 1549 637 659 856 3424 2236 1394 375 3796 5165 5602 3750 2486 1698 2303 1245 1252 859 4850 516 832 3586 4573 1662 3365 2524 5458 4834 906 3987 1660 2168 3116 4184 242 564 3180 4127 1054 3593 2462 237 722 2935 4882 4865 1676 1907 985 3771 145 3509 3109 4685 5384 948 5433 4226 3844 828 4308 4464 5389 2789 4962 2392 323 313 3774 1300 1666 5194 4768 1134 5009 4218 4472 5265 3834 3846 2439 3006 2788 3420 4302 5410 2552 1047 3032 3520 4142 3010 1978 5557 4392 1198 4665 770 3641 900 43 2963 4159 1160 3019 1303 1796 2208 1968 5500 3150 1936 2136 2970 2941 5395 2263 2381 3835 4574 1270 2768 3866 3187 5234 1109 2511 1934 5334 2190 851 1043 3231 3138 1444 413 2655 434 1335 4567 3045 2535 5634 5187 1622 3706 2635 3446 5127 547 1104 801 3139 384 2311 2367 5646 3976 5686 1258 2844 4867 80 673 1573 1577 2183 1103 3907 2469 3403 34 478 1351 2984 4268 3155 3849 3660 2169 3299 4249 1637 3837 4125 3250 2735 494 1928 253 3704 1403 308 1129 3100 3487 4566 5080 5275 5285 894 58 2034 3372 4330 5541 295 2438 3178 3285 4370 4419 4483 5167 1626 2981 5170 5660 3182 4210 2241 2522 72 579 1342 3763 5345 2906 1492 2217 4584 4731 2587 1078 3817 3882 4513 2212 4503 1329 4169 3760 4918 4046 1887 4375 1018 4247 4058 1560 2167 4354 103 727 1704 1506 5190 3443 4295 5186 1805 1923 5569 3263 749 2076 1902 1191 2620 144 315 1404 2873 3547 3674 1604 2471 1362 4970 1005 3862 5244 2363 1432 2360 2752 5125 5290 2741 5236 3621 549 4771 3011 4389 296 1159 2284 4651 5140 2923 5095 2148 5486 757 1474 1679 2259 3507 5659 3833 1505 3590 3877 3867 453 2781 325 5506 3015 1153 4254 3293 2097 5558 1259 5654 2801 3923 5625 3284 1780 4499 4511 4451 2726 2494 372 605 834 2835 3886 4627 3023 5685 2479 1814 2288 3434 2413 931 4055 2414 2908 3350 5489 3878 542 2751 3876 5008 2576 866 31 1238 1311 1257 5454 3251 5272 2540 2942 4422 1285 1266 1515 1027 3968 443 1401 2192 2425 3442 3619 877 1225 2019 2708 4001 3047 5689 1426 2456 3037 3114 5131 5189 3001 778 4235 1487 2757 4742 2384 2058 3013 4540 2946 3480 4469 5037 5308 3616 3343 3353 3247 2388 1181 3693 3214 4896 5311 5487 9 2442 2322 4774 2200 1820 2560 500 793 1148 1595 2578 687 3356 3893 934 5630 3564 447 5555 997 1082 2131 2255 2305 3014 3311 3828 4898 5653 207 1243 1691 2862 4360 4018 1007 623 2246 4727 675 3508 2151 1471 4986 3275 2452 4555 2668 5529 122 2295 2418 5603 5647 2008 2012 4490 2993 3872 3166 5610 3158 4602 5104 238 121 5179 2095 1384 3717 4458 223 638 759 2347 3217 3308 5332 5366 5516 3986 1745 3441 4130 1428 5294 1491 402 3494 4353 3410 3479 647 200 3629 3955 3511 300 688 3455 4144 1430 3352 1840 1785 1204 3103 2450 33 3501 3430 3575 1735 4030 3347 5378 28 1299 4261 4655 5623 3438 843 4474 1825 2670 718 184 4612 970 2820 4530 3592 5520 5141 212 1208 5021 4003 1392 1658 5112 75 5719 690 3626 1954 1483 3052 274 2774 5365 3042 298 4516 3060 1239 1598 2342 1418 707 3712 2223 5707 3381 1910 3734 5501 1767 2282 1740 1922 4377 4964 2499 1876 2646 4958 4423 3932 1116 1540 686 3122 4737 2704 3746 2575 2020 2454 1707 5617 2834 2866 4217 2147 442 2307 5151 5515 915 1823 2120 3317 3900 5100 5409 430 4406 5451 5229 117 423 1386 2947 455 4857 2603 5470 2153 5614 3611 860 126 5743 5759 2251 1750 381 3339 6 415 1615 5326 385 2553 4163 4699 4797 5016 4219 83 4679 4824 5259 753 532 3663 5055 1980 1434 5117 3091 3469 4968 5139 1892 125 5026 4766 3565 2886 3020 4830 1108 728 4635 999 1152 1946 2018 2501 3710 3383 5254 2818 418 2627 3544 2262 1002 3117 548 2647 3399 3488 3914 1683 994 3440 256 3413 5593 3532 3847 1635 4437 3415 1200 2846 4922 2758 1271 3670 2380 506 1661 1011 3382 1889 366 4204 1576 3557 5256 4045 2403 1882 61 840 2117 2609 2769 2985 3622 304 4097 4960 1962 473 708 1359 4760 5463 3325 2032 1429 3315 604 1837 3810 1908 3196 1596 195 5324 2621 3649 3647 2925 1952 4322 264 89 2361 2739 1419 5546 2760 4283 2176 5231 1680 1911 3836 1213 3966 3852 1870 2351 2693 55 5051 4408 1105 2396 1272 1628 3465 76 191 1250 3731 3730 1312 1743 5755 5344 3070 3657 2458 1864 1117 4040 2672 3871 2724 1821 3113 4845 244 1677 3467 1409 3561 5671 3994 709 1784 3127 1405 3808 5052 4656 545 1957 3349 4861 2580 132 3229 4840 3439 5699 2060 1083 3543 1188 1646 2719 849 5089 530 4443 4292 3397 3845 2451 941 589 4149 4551 1407 646 1063 3201 3841 4647 4667 1244 1778 1294 1115 1545 3409 4135 4747 5214 5367 4495 2382 2796 531 371 730 1878 2344 3645 4937 2920 5667 5551 3982 1045 138 2850 964 5258 4915 4688 1659 2320 114 4288 3245 1561 5046 289 5361 3274 98 942 1406 3569 755 1726 3209 1755 5431 2353 2989 4091 4739 2987 4477 540 2949 737 115 1725 2868 1874 2720 4129 2958 3282 2808 4521 1196 368 3661 1975 567 3870 2001 5183 1512 1445 3286 438 3199 5595 3228 4998 509 2943 5320 3416 5273 825 2814 901 388 1826 2343 2278 3132 3131 3933 1107 3739 726 1469 3802 1454 2257 3794 4639 5590 5771 3630 3273 4358 400 1838 1865 2913 3133 4940 5618 305 1553 1611 1916 2819 4593 412 5432 3362 3464 4734 5449 3757 1179 2544 4291 4677 2271 4582 1112 3062 3477 1173 2041 4717 1953 3272 4930 1008 5154 3855 3683 490 1813 3063 4120 908 2927 3125 4722 2791 358 3748 3072 3363 2523 3177 2562 937 700 2930 952 1233 5355 2809 5467 2214 4854 682 3696 3094 5243 1372 1260 241 4400 4044 1336 1640 4122 3238 2734 2242 301 344 2699 4847 1475 1023 1956 3567 5144 4695 4026 1859 4733 1528 2300 574 855 1742 337 1997 2160 2430 3301 4350 5637 4460 1942 626 3875 302 1567 3753 1774 661 2816 3791 533 5473 1203 2299 5023 1631 1537 4977 1141 2422 432 1801 3974 5025 5257 5199 249 1457 5318 5710 625 930 1828 128 5547 5606 5709 3406 4394 3145 378 1031 2292 2881 4870 2069 847 2864 2122 2162 3988 5097 209 1261 3506 1333 795 680 3162 4275 3945 1190 426 5748 3708 4752 4414 3058 904 1006 3691 982 362 5718 1062 5440 4214 4303 205 932 4368 1990 4668 2014 386 3821 2279 2692 902 2106 4809 1969 5363 5283 292 2049 672 838 3253 2374 2285 3602 5284 1421 4682 1119 4338 1915 231 5123 2400 991 5059 5613 3956 4390 2954 3027 2286 4146 3421 644 5717 2031 523 2579 3075 4133 5648 597 2756 4552 895 179 5101 3950 3601 512 5638 5137 2437 3142 4509 159 3021 1895 3853 5517 3358 369 468 2161 4858 4879 4885 2826 1465 45 3643 5534 5209 710 396 4541 1185 3684 2432 610 1871 2623 4386 3764 2298 1558 608 4359 820 2433 3958 4944 1476 4035 560 1143 2477 1931 3316 2527 2119 2636 4542 3815 1918 1330 5439 5307 3248 4296 2355 4367 5011 2085 5572 1314 2568 2196 3503 1591 1770 5443 4073 5226 2602 1464 90 42 4015 2204 1903 2156 5464 3458 3123 1600 2485 1831 2998 5650 3305 2547 4605 4897 1167 3135 3639 77 1365 4316 2383 5511 4785 3054 5085 87 2510 2445 4430 581 5711 3306 2561 141 1850 3024 3204 5405 364 3105 310 5607 297 2336 263 2599 760 5424 4310 1371 1130 3584 4641 22 1652 1702 4259 2393 1714 2688 167 24 2518 1114 3327 484 186 3926 806 1592 4391 1909 4818 3256 791 3402 3167 4701 607 2349 935 5057 3689 2099 698 645 642 1255 1964 3146 1154 2333 3525 2247 4762 3307 1422 4157 3551 1080 4784 1451 1081 829 5746 4006 4765 2465 1921 5680 5232 2045 5007 2723 3457 4976 1178 1232 1423 2965 286 2691 26 656 2763 1251 3969 3939 1438 404 273 1543 3244 1187 1263 1799 1885 1717 4098 4780 1775 168 2356 3016 5399 5239 1467 2705 136 2495 846 1375 4572 2297 913 3088 5110 4011 2103 4439 3436 3130 630 4660 1552 2319 4115 21 2642 4201 4670 1797 4705 2039 95 5621 593 974 3396 2358 4956 4621 3761 4524 1202 968 4693 2293 4447 2928 2155 4071 3874 5427 1851 3585 335 5524 2596 4080 5193 1121 4966 5374 3801 4078 5737 1629 4487 2945 1518 716 4740 2714 2229 1927 324 955 5575 3380 4364 5328 4326 1538 5147 4686 3524 4640 3375 4320 1521 3312 3695 1393 4409 1991 318 5702 636 5587 1066 1084 5303 4280 1841 606 339 5641 2460 511 2855 2225 3102 1324 4920 3597 2513 4373 3454 2840 3134 1815 544 5609 3792 398 4463 489 4318 5570 174 3234 1229 2181 1415 1176 1387 4416 5315 2779 1347 4265 3906 702 1155 745 2207 4501 5317 4994 1812 5631 3636 5419 2730 2424 5469 2742 4890 5220 5349 3901 1033 3784 3461 3718 1193 4626 2641 5174 4089 3807 421 2233 3754 390 504 4482 5106 183 611 2617 1072 1076 5724 534 2624 4369 2784 1382 5536 5568 5509 2142 66 5093 896 5765 4546 1264 5027 4974 2598 761 227 236 2121 4225 4022 2134 5545 2519 3453 2378 2216 1625 4520 5013 5088 920 5130 4996 1071 5068 5435 5036 2398 3559 2857 3009 1638 4467 4056 2073 1827 2118 1302 979 736 2700 5581 5673 1459 2289 4663 5292 3659 3425 1346 5185 17 1040 4293 4875 5286 219 1478 1669 5092 4993 5086 1701 5386 1651 3373 3151 850 3729 4545 1286 5191 2114 5385 844 2138 5442 4088 2588 519 409 5341 762 1771 155 922 4508 5507 40 4151 5376 4257 2992 5338 807 1128 2130 5041 5589 566 3558 5393 420 5358 1327 5532 944 5668 800 1532 5705 4047 4678 441 3614 4494 4535 2979 4538 464 116 3655 2502 3699 5306 3832 502 5704 4224 524 1316 691 2385 3859 5058 2474 5053 2885 5240 4759 4436 1862 2296 472 1633 4590 5494 3843 4510 2982 5736 4779 2268 4713 3654 1381 2235 3740 5436 5245 1317 4344 2514 5202 1620 2893 4199 1868 5382 4519 3720 2258 1751 1446 5263 2538 1201 2488 3393 1569 194 3039 2082 4928 1534 3181 3340 1790 414 3539 3459 1526 271 1206 1593 4103 4186 5221 3743 805 3417 5373 2179 4192 2879 1568 960 3257 3583 4470 756 218 4518 2898 5160 1379 1587 4082 1609 2918 4953 905 1947 1732 5462 3779 633 890 140 1064 4609 2463 19 1172 3289 763 3990 4770 2882 3640 1254 4568 765 701 457 5530 463 2040 2054 1039 5078 2533 1762 5483 1588 3374 3149 4732 4828 5353 1802 2565 943 3018 891 1424 3679 1319 5521 3472 2876 4565 2847 4429 1687 3310 1355 1452 3462 5735 1873 2549 1349 4016 3224 5379 704 950 411 3787 4714 4806 1959 1481 4916 4019 1617 3566 2813 243 713 4624 5457 439 4911 1163 4100 853 1093 5460 4891 1291 2301 3321 1440 3909 2659 758 5299 4836 2243 4145 3957 1986 498 1046 692 3949 3207 4919 4485 1517 4027 4580 552 1763 2836 2701 3159 5148 267 1325 1650 4673 3154 5446 5411 780 833 4059 5067 4270 5213 4534 1798 4213 2070 4327 357 4914 2783 1310 1016 343 222 1332 2629 2612 3390 2464 5554 584 738 885 1689 2186 3848 10 615 3236 3790 3028 1037 3437 5196 3104 2938 2907 4859 456 4017 903 3216 788 857 2944 2325 5542 1737 4812 918 208 4021 3587 3044 2661 1582 1499 804 2717 5253 3702 4687 1764 854 1699 5091 4674 252 3778 4143 2831 5493 2154 2291 5713 3222 3984 2912 56 4272 3594 2914 1098 2536 1052 3642 4064 2825 5559 1356 4042 1589 331 3447 3471 2909 2159 4081 1001 4954 5102 5071 1396 4825 782 3770 5004 2875 3126 5359 5663 3249 3056 5497 2399 4263 4598 1136 750 3152 4946 4223 3997 4290 3775 2431 1741 3623 3934 5252 4395 49 3948 4587 1227 3698 2529 2762 3136 4123 1810 3935 5492 2625 1209 1216 4413 4328 4007 1977 2632 2094 1091 161 4927 4243 5397 2574 1427 349 4093 214 2459 436 2072 1808 1090 4010 2405 3910 1358 1488 5342 257 485 1563 496 5042 4761 4162 3288 282 1703 5552 3780 2754 4600 5537 1331 4769 629 4289 1494 111 137 4871 2193 3497 2493 4807 2143 1369 5143 743 2983 2994 4428 4843 3890 852 4526 993 3384 3608 4988 3522 5242 3128 2556 1313 1437 1829 2007 2081 3925 4203 4848 4023 4305 5388 2583 4158 5195 4724 635 3799 826 3499 5691 1630 5132 3972 1673 3952 3758 3599 3737 2163 2141 2745 3031 1010 4136 1697 3510 353 4620 3887 4523 1932 1858 3101 3768 2648 594 4702 4746 3625 1024 4721 1634 3035 3924 3230 1288 3975 1353 2435 5081 2698 3604 314 3896 3922 3736 752 2409 2822 5669 5556 3579 4617 1157 2407 2026 1448 1872 3921 3687 1000 1951 3017 592 2009 660 2256 2964 878 1334 2491 4043 4092 3095 1297 4342 696 5323 1338 2411 1544 5270 5772 3260 619 5364 4675 101 5322 2573 2000 4860 5247 3481 5135 1360 958 2718 4141 4504 3728 1692 4810 320 51 3388 3176 2194 3549 2516 3690 1940 471 129 2232 5553 3985 4562 3588 2880 774 3431 4782 3989 4597 4931 4967 4264 4899 2326 4696 1586 4720 495 3392 5694 4772 3703 4468 4478 714 4616 3398 2321 3225 2056 1131 732 3560 3776 4276 5758 5761 2806 823 4648 5441 5741 3040 2264 3512 5749 1792 1794 5629 4401 2667 5466 482 2555 2725 367 784 554 4454 2815 4407 1546 359 178 444 30 1852 284 4892 992 1782 2222 977 3269 1210 517 4883 3755 393 4653 4281 4715 2048 3938 2613 1290 3448 3973 4404 376 5676 5733 5696 764 3733 4561 3785 4117 3444 4349 1402 4134 3529 631 279 2953 1156 2687 1509 3370 3931 2863 4067 3786 1919 927 946 4050 2165 1944 4187 374 4329 2206 5035 1111 4823 667 465 1162 5708 4013 2910 342 4528 2057 113 4037 3003 4399 5740 739 3570 3772 4735 2172 2237 5632 4815 938 4498 717 4569 4711 4515 2077 867 2062 1715 1824 4876 3323 1280 5391 1086 4251 2126 3747 445 487 2228 865 3193 4038 3342 5697 3941 2939 4522 1067 2812 4793 4987 477 1974 1992 3705 5453 684 2253 674 987 62 733 1963 706 5269 5121 119 1322 4140 4817 5301 1038 507 4799 2191 112 1536 4979 1348 228 0.2 0.0 0.2 0.4 0.6 5 clusters Cj j : nj | aveiCj si 1 : 1130 | 0.30

2 : 385 | 0.37

3 : 1694 | 0.14

4 : 1444 | 0.29

5 : 1120 | 0.09

0.8

1.0

Silhouette width si Average silhouette width : 0.21

Figura 5.2:

Nota de R 38 (Fichero notaR116) Analizamos los datos Ruspini, muy conocidos en la literatura de anlisis cluster. Primero se hace un particionamiento alrea dedor de los k-mediodes con cuatro grupos. La gura 5.3 muestra los resultados. Despus hacemos un anlisis jerrquico aglomerativo y observamos la silueta con e a a cinco y con dos grupos. Ver guras 5.4 and 5.5 respectivamente.

data(ruspini) pr4 <- pam(ruspini, 4) str(si <- silhouette(pr4)) (ssi <- summary(si)) plot(si) # silhouette plot

## Silueta con un cluster jerrquico a ar <- agnes(ruspini) #Se utilizan 5 grupos si3 <- silhouette(cutree(ar, k = 5), daisy(ruspini)) plot(si3, nmax = 80, cex.names = 0.5) ## Repetimos el anlisis anterior con dos grupos a si4 <- silhouette(cutree(ar, k = 2), daisy(ruspini)) 12

plot(si4, nmax = 80, cex.names = 0.5)

Silhouette plot of pam(x = ruspini, k = 4)


n = 75 10 6 9 11 8 12 3 14 2 16 13 4 18 15 19 1 5 20 17 7 26 32 27 25 28 35 33 23 22 34 31 36 24 29 30 21 37 39 38 40 42 43 41 54 57 55 50 52 56 59 49 51 60 58 53 45 46 47 48 44 70 67 65 69 71 66 62 64 73 63 72 61 68 74 75 0.0 0.2 0.4 0.6 4 clusters Cj j : nj | aveiCj si

1 : 20 | 0.73

2 : 23 | 0.75

3 : 17 | 0.67

4 : 15 | 0.80

0.8

1.0

Silhouette width si Average silhouette width : 0.74

Figura 5.3:

Silhouette plot of (x = cutree(ar, k = 5), dist = daisy(ruspini))


n = 75
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 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75

5 clusters Cj j : nj | aveiCj si

1 : 20 | 0.71

2 : 23 | 0.74

3 : 14 | 0.56 4 : 3 | 0.78 5 : 15 | 0.80

0.0

0.2

0.4

0.6

0.8

1.0

Silhouette width si Average silhouette width : 0.71

Figura 5.4:

5.5.

Algunos ejemplos

Para acabar el tema inclu mos algunos ejemplos de anlisis cluster. a Nota de R 39 (Fichero notaR135) Veamos un ejemplo de anlisis cluster. Los a datos proceden de la siguiente pgina web: http://www.uni-koeln.de/themen/Statistik/data/cluster/. a 13

Silhouette plot of (x = cutree(ar, k = 2), dist = daisy(ruspini))


n = 75
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 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75

2 clusters Cj j : nj | aveiCj si

1 : 35 | 0.58

2 : 40 | 0.59

0.0

0.2

0.4

0.6

0.8

1.0

Silhouette width si Average silhouette width : 0.58

Figura 5.5: Tenemos cuatro variables que nos dan las puntuaciones obtenidas en 25 escuelas de New Haven en aritmtica y lectura al principio del cuarto curso y al principio e del sexto curso. Hacemos un anlisis cluster jerrquico. Observando el dendograma parece razoa a nable considerar tres grupos. Aplicamos un particionamiento alrededor de los mediodes con tres grupos y valoramos el resultado. Si probamos con dos o cuatro vemos que no mejora el resultado global del anlisis a cluster.

#Datos achieve library(cluster) x= read.table(../data/achieve.txt) names(x) = c("centro","lec4","aritme4","lec6","aritme6") attach(x) y = x[,2:ncol(x)] y.ag = agnes(y) plot(y.ag) #Parece que hay tres grupos y.pam = pam(y,3) summary(y.pam)

y.si = silhouette(y.pam) plot(y.si) #Parece que los dos ltimos grupos no estn bien definidos. u a 14

#Vamos a probar con distintos nmero de grupos. u

y.pam = pam(y,2) summary(y.pam)

y.si = silhouette(y.pam) plot(y.si)

y.pam = pam(y,4) summary(y.pam)

y.si = silhouette(y.pam) plot(y.si) #Repetimos el anlisis con k-medias y comparamos con k-mediodes a y.pam = pam(y,3) y.km = kmeans(y,3) table(y.pam$cluster,y.km$cluster)

Nota de R 40 (Fichero notaR136) Veamos un ejemplo de anlisis cluster. Los a datos proceden de la siguiente pgina web: http://www.uni-koeln.de/themen/Statistik/data/cluster/. a Los datos son las tasas de nacimiento y muerte en 70 pases. Observemos que los datos se leen desde un chero de SPSS por lo que hay que usar la librera foreign [2]. Hacemos un anlisis cluster jerrquico. Observando el dendograma parece razoa a nable considerar tres grupos. Aplicamos un particionamiento alrededor de los mediodes con tres grupos y valoramos el resultado. Si probamos con dos o cuatro vemos que no mejora el resultado global del anlisis a cluster.

#Datos achieve library(cluster) library(foreign) x= read.spss(../data/birth.sav,to.data.frame=T) names(x) = c("country","birth","death") attach(x) y = x[,2:ncol(x)] y.ag = agnes(y) plot(y.ag)

15

#Parece que hay tres grupos y.pam = pam(y,3) summary(y.pam)

y.si = silhouette(y.pam) plot(y.si) #Parece que los dos ltimos grupos no estn bien definidos. u a #Vamos a probar con distintos nmero de grupos. u

y.pam = pam(y,2) summary(y.pam)

y.si = silhouette(y.pam) plot(y.si)

y.pam = pam(y,4) summary(y.pam)

y.si = silhouette(y.pam) plot(y.si) #Repetimos el anlisis con k-medias y comparamos con k-mediodes a y.pam = pam(y,2) y.km = kmeans(y,2) table(y.pam$cluster,y.km$cluster)

16

Cap tulo 6

Anlisis discriminante o de a cmo clasicar con muestra o de entrenamiento


Discriminar es clasicar. Es una palabra mal vista. Cuando una persona le dice a otra: Usted me discrimina est indicando algo negativo en la medida en que piensa a que lo est separando para perjudicarle. Se asume la discriminacin como algo que a o se realiza en un sentido negativo. Pues no. El anlisis discriminante simplemente se a reere al problema de clasicar en distintos grupos un conjunto de observaciones vectoriales. Clasicar y discriminar se usan como sinnimos. o Tenemos distintos conjuntos de datos multivariantes. Qu quiere que tenemos e grupos y qu pretendemos hacer con ellos? Una biloga ha recogido una serie de e o animales y ha observado en cada uno unas caracter sticas numricas. Esta biloga e o ha podido clasicar a los animales en distintas especies utilizando las variables x de las que dispone y, posiblemente, algunas otras cuya consecucin ya no es tan o simple y, en ocasiones, ni posible. Est interesada en dise ar un procedimiento que, a n partiendo de las variables de las que siempre dispone x, le permita decidir la especie a la que pertenece un animal futuro del cual solamente tiene las caracter sticas x. Tiene esta persona un problema de clasicacin que pretende hacer bien y clasicar o a cada animal en su especie con un esfuerzo peque o. n Otro ejemplo puede ser el siguiente. Una persona ha pasado una enfermedad (como la hidatidosis) y por lo tanto guarda en su organismo anticuerpos frente al virus que lo infect y le caus la enfermedad. A este individuo se le controla a lo o o largo de los a os. Cuando se le aplica un procedimiento diagnstico el resultado n o puede ser positivo debido a dos razones: el individuo ha reca en la enfermedad y do por lo tanto ha de ser tratado. Sin embargo, si el procedimiento es muy sensible el resultado positivo del test puede ser simplemente producidos por los anticuerpos que la persona conserva. Diferenciar una situacin de la otra supone otra exploracin o o (placas del trax) y, por ello, una complicacin adicional. En la realizacin del test o o o se han recogido la presencia o ausencia de una serie de aminocidos. Tenemos que a nuestro vector de caracter sticas son variables binarias o dicotmicas y pretendemos o poder decidir a partir de ellas si la persona est sana sin anticuerpos, sana con a anticuerpos o nalmente enferma utilizando la presencia o ausencia de los distintos anticuerpos. Este es un segundo problema de inters a tratar aqu e . Pretendemos clasicar a un individuo dado utilizando algunas caracter sticas del mismo. Pero para poder hacerlo tenemos que conocer para una muestra, que podemos llamar muestra de entrenamiento (training sample), en qu grupo est e a cada individuo con los que trabajamos. Esto hace bastante natural el nombre ms a 1

utilizado en el contexto de la Informtica de clasicacin supervisada. a o Nota de R 41 (Fichero notaR102) Tenemos pacientes de los cuales se conocen algunas variables obtenidas de un anlisis de orina. En concreto las variables nos a dan la gravidez especca (grav), la osmolaridad (osmo), la conductibilidad (con duc), la concentracin de urea (urea) y la concentracin de calcio (calcio). Tambin o o e tenemos una variable que nos indica la presencia o ausencia de cristales en la orina del individuo (grupo donde 1 indica ausencia y 2 indica presencia). El problema que nos planteamos es dise ar un procedimiento de clasicacin de modo que, dado el n o vector de caractersticas de la orina, nos permita clasicar a un individuo en uno de los dos posibles grupos, esto es, que va a desarrollar cristales en la orina o no. En el dise o del procedimiento pretendemos utilizar la informacin que ya tenemos, n o esto es, conocemos para una serie de individuos si tiene o no cristales y los vectores de caractersticas asociados. En una observacin futura tendremos el vector de o caractersticas pero no conoceremos la clasicacin. o

library(foreign) #Leemos los datos de un fichero SPSS x = read.spss(file=../data/cristal.sav,to.data.frame=T) #No estaba bien definido el dato faltante x[x==-1] = NA cc = complete.cases(x) x = x[cc,] attach(x)

> x 2 3 4 5 6 7 IND 2 3 4 5 6 7 ausencia ausencia ausencia ausencia ausencia ausencia de de de de de de GRUPO cristales cristales cristales cristales cristales cristales GRAV 1.017 1.008 1.011 1.005 1.020 1.012 PH OSMO CONDUC UREA CALCIO 5.74 577 20.0 296 4.49 7.20 321 14.9 101 2.36 5.51 408 12.6 224 2.15 6.52 187 7.5 91 1.16 5.27 668 25.3 252 3.34 5.62 461 17.4 195 1.40

#Un resumen de cada variable summary(x) > summary(x) IND Min. : 2.00 1st Qu.:21.00 Median :40.00 Mean :40.31 3rd Qu.:60.00 Max. :79.00 OSMO Min. : 187.0 1st Qu.: 410.0 Median : 594.0 Mean : 613.6

GRUPO ausencia de cristales :44 presencia de cristales:33

CONDUC Min. : 5.10 1st Qu.:14.30 Median :21.40 Mean :20.91

GRAV PH Min. :1.005 Min. :4.760 1st Qu.:1.012 1st Qu.:5.530 Median :1.018 Median :5.940 Mean :1.018 Mean :6.041 3rd Qu.:1.024 3rd Qu.:6.400 Max. :1.040 Max. :7.940 UREA CALCIO Min. : 10.0 Min. : 0.17 1st Qu.:159.0 1st Qu.: 1.45 Median :255.0 Median : 3.16 Mean :262.4 Mean : 4.16 2

3rd Qu.: 803.0 Max. :1236.0

3rd Qu.:27.00 Max. :38.00

3rd Qu.:362.0 Max. :620.0

3rd Qu.: 6.19 Max. :14.34

Nota de R 42 (Fichero notaR103) Los datos corresponden a una serie de personas de las cuales conocemos informacin que previsiblemente nos permitir si son o a diabticos o no. Incluso dentro de los diabticos pretendemos discriminar (distine e guir) entre diabetes clnica y diabetes maniesta. La variable tipo nos indica en qu e grupo est la persona observada de los tres indicados. El resto de variables nos desa criben al paciente: peso es el peso relativo, gpb es la glucosa plasmtica en ayunas, a garea el area bajo la curva de la glucosa, iarea el area bajo la curva de insulina y sspg la glucosa plasmtica en estado estacionario. Pretendemos clasicar a un individuo a en uno de los tres grupos posibles teniendo en cuenta las variables consideradas.

library(foreign) x= read.spss(file=../data/diabetes.sav,to.data.frame=T) > x 1 2 IND PESO GPB GAREA IAREA SSPG 1 0.81 80 356 124 55 2 0.95 97 289 117 76 75 92 455 442 636 741 392 109 314 219 242 157 TIPO LIAREA control 4.820282 control 4.762174 diabetes quimica 5.971262 diabetes quimica 4.691348

104 104 1.10 105 105 0.94

136 136 1.01 120 137 137 1.19 138

220 diabetes manifiesta 5.749393 209 diabetes manifiesta 5.389072

summary(x) > summary(x) IND Min. : 1 1st Qu.: 37 Median : 73 Mean : 73 3rd Qu.:109 Max. :145 IAREA Min. : 10.0 1st Qu.:118.0 Median :156.0 Mean :186.1 3rd Qu.:221.0 Max. :748.0

PESO Min. :0.7100 1st Qu.:0.8800 Median :0.9800 Mean :0.9773 3rd Qu.:1.0800 Max. :1.2000 SSPG Min. : 29.0 1st Qu.:100.0 Median :159.0 Mean :184.2 3rd Qu.:257.0 Max. :480.0

GPB Min. : 70.0 1st Qu.: 90.0 Median : 97.0 Mean :122.0 3rd Qu.:112.0 Max. :353.0

GAREA Min. : 269.0 1st Qu.: 352.0 Median : 413.0 Mean : 543.6 3rd Qu.: 558.0 Max. :1568.0 TIPO LIAREA diabetes manifiesta:33 Min. :2.303 diabetes quimica :36 1st Qu.:4.771 control :76 Median :5.050 Mean :5.019 3rd Qu.:5.398 Max. :6.617

El tema utiliza la librer MASS [15]. a El tema est organizado del siguiente modo. Empezamos (seccin 6.1) recordana o do el teorema de Bayes con un ejemplo muy simple de urnas (no funerarias). De 3

este modo vemos la idea bsica del mtodo de clasicacin basado en probabilidaa e o des a posteriori. Consideramos en la seccin 6.2 la situacin con dos poblaciones o o normales univariantes con la misma varianza y con los parmetros conocidos. En a la seccin 6.3 abordamos la situacin con dos poblaciones normales multivariantes. o o All consideramos tanto el caso en que las matrices de covarianzas son la misma como cuando son distintas. En la seccin 6.4 nos planteamos la estimacin de los o o vectores de medias y las matrices de covarianzas y vemos la implementacin prco a tica del mtodo. El problema de la reduccin de la dimensin dentro del problema e o o de la clasicacin es considerado en la seccin 6.7 o o

6.1.

Un problema de probabilidad sencillo

1/3 y P (B2 | A) = 2/3. Las probabilidades P (B1 ) y P (B2 ) reciben el nombre de probabilidades a priori. Vamos a denotarlas en lo que sigue por i , esto es, la probabilidad de la urna i. Nuestra informacin consiste en la ocurrencia del suceso A (la bola ha sido blanca) o de modo que las probabilidades P (A | B1 ) y P (A | B2 ) ser las verosimilitudes an de que ocurra lo que ha ocurrido si la urna es la primera o la segunda. Finalmente tenemos P (B1 | A) y P (B2 | A) que nos dar las probabilidades a posteriori. an Hemos de tomar una decisin: cul fue la urna elegida? Parece natural elegir o a aquella que tiene a posteriori una mxima probabilidad y quedarnos con la segunda a urna. Vamos a reescribir lo que acabamos de hacer que nos acerque al planteamiento ms genrico del problema. Supongamos que describimos el color de la bola elegida a e mediante una variable dicotmica o binaria. Consideramos la variable aleatoria X o que vale uno si es blanca la bola y cero en otro caso. Es lo que se llama una variable indicatriz pues nos indica si se ha producido el suceso que nos interesa. 1 El comportamiento aleatorio de X, su distribucin de probabilidad, depende que o estemos extrayendo una bola de la primera o de la segunda urna. En concreto en la primera urna X sigue una distribucin Bernoulli con probabilidad de xito p1 = 1/3 o e mientras que en la segunda urna tenemos una Bernoulli con probabilidad de xito e
1 Si A es el suceso de inters entonces X() = 1 si A y cero en otro caso. A veces se denota e como X() = 1A ().

Veamos un problema de probabilidad bsico que nos servir para introducir el a a procedimiento de clasicacin que vamos a utilizar. No le falta ning n detalle y o u muchos lo hemos resuelto. Tenemos dos urnas. En la primera de ellas hay una bola blanca y dos negras mientras que en la segunda urna hay dos bolas blancas y una negra. Elegimos al azar una urna (no sabemos cul es la elegida). Posteriormente de a la urna elegida, elegimos a su vez una bola. Resulta que la bola elegida es blanca. La pregunta que nos hacemos es: De qu urna la hemos elegido? La solucin es una e o aplicacin del teorema de Bayes (ver 1.2.1). Denotamos Bi el suceso consistente en o que la bola ha sido extra de la i-sima urna y por el A el suceso de que la bola da e es blanca. A priori, antes de realizar el experimento, las dos urnas ten la misma an probabilidad (elegimos al azar una de las urnas) y por tanto la probabilidad (previa o a priori) de los sucesos Bi ser P (Bi ) = 1/2. No sabemos si la urna elegida ha an sido la primera o la segunda pero nos podemos plantear qu probabilidad tenemos e de que sea blanca si efectivamente es la urna 1 la elegida y lo mismo para la dos. Es obvio que P (A | B1 ) = 1/3 y P (A | B2 ) = 2/3. Esta informacin se puede o combinar aplicando el teorema de Bayes para determinar la probabilidad de que sea la primera o la segunda urna la elegida sabiendo (teniendo pues una informacin o adicional sobre el experimento) que ha salido blanca. En concreto tenemos que ) P (Bi | A) = PkP (A|Bi )P (Bi(B ) . Finalmente podemos comprobar que P (B1 | A) = P (A|B )P
j=1 j j

p2 = 2/3. Cada urna es una poblacin distinta donde el comportamiento aleatorio o de la misma cantidad es distinto. X en la i-sima poblacin tiene una funcin de e o o probabilidad fi (x) = px (1 pi )1x con x = 0, 1. i Ten amos unas probabilidades a priori de que X estuviera siendo observada en la poblacin i-sima que denotamos por (i) donde (1) + (2) = 1 y (1), (2) 0. o e Las probabilidades a posteriori obtenidas por la aplicacin del teorema de Bayes o vienen dadas por fi (x)(i) . (i | x) = f1 (x)(1) + f2 (x)(2) Finalmente nos hemos quedado con la poblacin i tal que ten un valor de (i | x) o a mayor, aquella que, una vez observado el valor de X = x, hac ms probable la a a poblacin. o

6.2.

Dos poblaciones normales

Supongamos ahora que tenemos que decidir entre dos poblaciones basndonos a en un valor aleatorio continuo con distribucin normal. En concreto supondremos o que en la primera poblacin X es normal con media 1 y varianza 2 . En la segunda o poblacin X tiene distribucin normal con media 2 y varianza 2 . Grcamente en o o a la gura 6.1 aparece la situacin con la que nos encontramos. Supongamos conocidos o los valores de las media y la varianza com n. Observamos un valor de la variable u X = x: cul de las dos distribuciones lo ha generado? De otro modo: a qu a e poblacin pertenece este valor generado? o La idea para clasicar este valor generado es la misma de antes. Ahora tendremos 1 exp fi (x) = f (x | i , 2 ) = 2 1 (x i )2 , 2 2

aunque fi (x) no es la probabilidad del valor x asumiendo que estamos en la poblacin i. No obstante, fi (x)dx s que tiene este sentido. Hablando en un sentido o amplio tenemos una interpretacin similar. La observacin x la clasicar o o amos en la poblacin 1 si o (1)f (x | 1 , 2 ) > 1, (2)f (x | 2 , 2 ) Fcilmente comprobamos que esto equivale con que a 1 1 (1 2 ) x (1 + 2 ) 2 2 > log (2) . (1)

6.3.

Dos normales multivariantes

En la seccin 6.2 nos plantebamos la situacin de dos normales univariantes. En o a o las aplicaciones es ms habitual el caso en que trabajamos con varias caracter a sticas simultneamente. En particular, vamos a asumir ahora que X puede pertenecer a a una de dos poblaciones normales multivariantes. La primera con vector de medias 1 y matriz de covarianzas y la segunda con vector de medias 2 y matriz de covarianzas . Dada una observacin multivariante x, la clasicaremos en la poblacin o o 1 si (1)f (x | 1 , ) > 1, (2)f (x | 2 , ) 5

0.0

0.1

0.2

0.3

0.4

2 x

Figura 6.1: Dos densidades normales con la misma varianza y distinta media. pero, f (x | 1 , ) = f (x | 2 , )

1 1 exp (x 1 ) 1 (x 1 ) + (x 2 ) 1 (x 2 ) = 2 2 1 exp (1 2 ) 1 x (1 2 ) 1 (1 + 2 ) . 2

(6.1)

Sea = 1 (1 2 ), entonces la observacin es asignada a la primera poblacin o o si 1 (2) D(x) = x (1 + 2 ) > log . (6.2) 2 (1) Notemos que la ecuacin D(x) = log (2) nos dene un hiperplano que separa las o (1) dos poblaciones. Qu ocurre si no asumimos que tenemos una misma matriz de covarianzas? En e este caso se tiene que: Q(x) = log f (x | 1 , 1 ) = f (x | 2 , 2 ) |2 | 1 1 1 log (x 1 ) 1 (x 1 ) + (x 2 ) 1 (x 2 ) = 1 2 2 |1 | 2 2 |2 | 1 1 1 1 log x (1 1 )x 2x (1 1 2 2 ) . 2 1 2 |1 | 2 6

(6.3)

Como en el caso anterior asignamos la observacin x a la primera poblacin si o o Q(x) > log (2) . (1)

(2) Notemos que ahora Q(x) = log (1) no es un hiperplano sino que tenemos una supercie no plana.

6.4.

Dos poblaciones normales multivariantes con parmetros desconocidos a

Lo visto en las secciones anteriores ten como objeto mostrar de un modo suave a la transicin desde el resultado probabil o stico bsico, el teorema de Bayes, y su a aplicacin en el problema de la clasicacin. Sin embargo, no es real asumir que o o conocemos completamente la distribucin de las observaciones en cada poblacin o o o clase En las aplicaciones los vectores de medias y la matriz o matrices de covarianzas no son conocidas. Hemos de estimarlas a partir de los datos. Veamos primero cmo o hacerlo y luego cmo usar estos parmetros en el procedimiento de clasicacin. o a o Empezamos por el caso en que tenemos dos poblaciones normales con vectores de medias 1 y 2 y matrices de covarianzas 1 y 2 . Lo que tenemos son dos muestras aleatorias correspondientes a cada una de las poblaciones. Supongamos que tenemos ni individuos de la poblacin i y los vectores de cao racter sticas son los vectores columna xij Rd (con i = 1, 2 y j = 1, . . . , ni ). Denotamos ni 2 ni j=1 xij i=1 j=1 xij , x = (6.4) xi = ni n donde n = n1 + n2 . Sea Si la matriz de varianzas o de dispersin de la poblacin i, o o es decir, ni j=1 (xij xi )(xij xi ) Si = . (6.5) ni 1

El vector i es estimado mediante i = xi . La matriz i la estimamos mediante Si . En el caso particular en que asumamos que = 1 = 2 entonces la matriz de covarianzas com n la estimamos con u Sp =
2 i=1 (ni

1)Si . n2

Cmo clasicamos? Las distribuciones tericas que supon o o amos conocidas son reemplazadas por las distribuciones normales con los parmetros estimados. a Si asumimos una matriz de covarianza com n a ambas poblaciones entonces u asignamos x a la primera poblacin si o Ds (x) > log donde y (2) , (1) (6.6)

1 x Ds (x) = (x (1 + x2 ) 2 = S1 (1 x2 ). p x

(6.7) (6.8)

La funcin Ds recibe el nombre de funcin discriminante lineal. La razn es obvia: o o o clasicamos en uno o en otro grupo utilizando una funcin lineal de las distintas o variables. 7

En el caso particular en que (1) = (2), esto es, consideramos a priori igualmente probables ambos grupos entonces la regla de clasicacin propuesta ser o a: clasicamos en la poblacin o clase 1 si, o 1 x > ( x1 + x2 ). 2 Es es el procedimiento que propuso R.A. Fisher en 1936. Notemos que las probabilidades de pertenencia a posteriori a cada una de las poblaciones pueden ser estimadas mediante (i|x) = (i)f (x|i , Sp ) x . (1)f (x|1 , Sp ) + (2)f (x|2 , Sp ) x x (6.9)

Una vez tenemos las probabilidades a posteriori estimadas el individuo es clasicado en el grupo que tiene una mayor probabilidad a posteriori. Nota de R 43 (Fichero notaR104) Es un ejemplo de anlisis discriminante lia neal con dos grupos. Los datos aparecen descritos en la nota 41. Consideramos dos situaciones. En la primera las probabilidades a priori de cada grupo se asumen iguales entre s y, por lo tanto, iguales a 0,5. En el segundo caso, las probabilidades a priori coinciden con las proporciones observadas dentro de la muestra de cada una de las poblaciones o clases. ##Leemos los datos library(foreign) x = read.spss(file=../data/cristal.sav,to.data.frame=T) x[x==-1] = NA ##No estaba definido el -1 como datos faltante ##en el fichero original cc = complete.cases(x) ## Vemos los casos en que no hay dato ## faltante attach(x[cc,]) ##Suponemos matrices de covarianzas iguales y probabilidades a priori iguales library(MASS) z = lda( GRUPO ~ CALCIO + CONDUC + GRAV + OSMO + PH + UREA, prior = c(1,1)/2) > z Call: lda(GRUPO ~ CALCIO + CONDUC + GRAV + OSMO + PH + UREA, prior = c(1, 1)/2) Prior probabilities of groups: ausencia de cristales presencia de cristales 0.5 0.5 Group means: CALCIO CONDUC GRAV OSMO PH UREA ausencia de cristales 2.628864 20.55000 1.015364 561.6591 6.125682 232.4318 presencia de cristales 6.202424 21.37879 1.021576 682.8788 5.927273 302.3636 Coefficients of linear discriminants: LD1 CALCIO 0.301091251 8

CONDUC -0.117156709 GRAV 140.610784925 OSMO 0.003408930 PH -0.125723350 UREA -0.008383726 ##Veamos cmo recuperar los distintos elementos del anlisis o a attributes(z) > attributes(z) $names [1] "prior" "counts" [8] "call" "terms" $class [1] "lda" ##Probabilidades a priori z$prior > z$prior ausencia de cristales presencia de cristales 0.5 0.5 ##El nmero de datos por grupo u z$counts > z$counts ausencia de cristales presencia de cristales 44 33 ##El vector de medias estimado en cada grupo z$means > z$means CALCIO CONDUC GRAV OSMO PH UREA ausencia de cristales 2.628864 20.55000 1.015364 561.6591 6.125682 232.4318 presencia de cristales 6.202424 21.37879 1.021576 682.8788 5.927273 302.3636

"means" "scaling" "lev" "xlevels"

"svd"

"N"

## Vamos a obtener las probabilidades a posteriori ## Observar la opcin CV=TRUE o z = lda( GRUPO ~ CALCIO + CONDUC + GRAV + OSMO + PH + UREA, prior = c(1,1)/2,CV=TRUE) attributes(z) > attributes(z) $names [1] "class" "posterior" "terms" ##Probabilidades a posteriori 9

"call"

"xlevels"

z$posterior ##No muestro toda la salida > z$posterior ausencia de cristales presencia de cristales 1 0.6410723439 0.35892766 2 0.8700259575 0.12997404 3 0.8483785261 0.15162147 4 0.9053400470 0.09465995 5 0.5761860564 0.42381394 6 0.8967915333 0.10320847 7 0.2665532816 0.73344672 ##Clasificaciones para cada los distintos casos z$class > z$class [1] ausencia de cristales ausencia de cristales [4] ausencia de cristales ausencia de cristales

ausencia de cristales ausencia de cristales

#Las probabilidades a priori corresponden con proporciones observadas z1 = lda( GRUPO ~ CALCIO + CONDUC + GRAV + OSMO + PH + UREA,CV=TRUE) ##Probabilidades a posteriori (no es toda la salida) z1$posterior > z1$posterior ausencia de cristales presencia de cristales 1 0.7042676259 0.29573237 2 0.8992456041 0.10075440 3 0.8818036171 0.11819638 4 0.9272842171 0.07271578 5 0.6444698875 0.35553011 6 0.9205435042 0.07945650 7 0.3264031028 0.67359690

En la situacin ms general no asumiremos una misma matriz de covarianzas o a en las dos poblaciones. En este caso estimamos la matriz i mediante la matriz Si dada en la ecuacin 6.5. Las probabilidades a posteriori las estimamos como o (i|x) = (i)f (x|i , Si ) x . (1)f (x|1 , S1 ) + (2)f (x|2 , S2 ) x x (6.10)

Nota de R 44 (Fichero notaR105) Con los datos de la nota 41 realizamos un anlisis discriminante cuadrtico en donde no asumimos una matriz de covarianzas a a comn. u #Leemos los datos library(foreign) 10

x = read.spss(file=../data/cristal.sav,to.data.frame=T) x[x==-1] = NA cc = complete.cases(x) attach(x[cc,])

z <- qda( GRUPO ~ CALCIO + CONDUC + GRAV prior = c(1,1)/2,CV=TRUE) z$posterior

+ OSMO + PH + UREA,

> z$posterior ausencia de cristales presencia de cristales 1 7.658585e-01 0.234141505 2 9.465173e-01 0.053482670 3 9.718836e-01 0.028116449 4 9.811643e-01 0.018835694 5 5.413410e-01 0.458659042 6 9.434295e-01 0.056570538 7 2.934976e-01 0.706502353

z1 <- qda( GRUPO ~ CALCIO + CONDUC + GRAV z1$posterior

+ OSMO + PH + UREA,CV=TRUE)

> z1$posterior ausencia de cristales presencia de cristales 1 8.134756e-01 0.186524405 2 9.593444e-01 0.040655595 3 9.787634e-01 0.021236612 4 9.858064e-01 0.014193607 5 6.114531e-01 0.388546921 6 9.569634e-01 0.043036553 7 3.564571e-01 0.643542909

6.5.

Anlisis discriminante con ms de dos poblaa a ciones normales

Supongamos que tenemos unas probabilidades a priori (i) de que el caso pern tenezca al grupo i con i = 1, . . . , g (obviamente i=1 (i) = 1). Si x son las caracter sticas de un caso entonces vamos a asumir que x tiene una distribucin normal o multivariante con media i y matriz de varianzas i en la clase i. Su densidad de probabilidad viene dada por 1 f (x | i , i ) = (2)d/2 | i |1/2 exp{ (x i ) 1 (x i )}. i 2 (6.11)

Utilizando el teorema de Bayes tenemos que las probabilidades a posteriori vienen dadas por (i)f (x | i , i ) . (6.12) (i | x) = k j=1 (j)f (x | j , j ) 11

Un mtodo de clasicacin consiste en clasicar al individuo con caracter e o sticas x en la clase o grupo tal que la probabilidad a posteriori (i | x) es mxima o lo a que es lo mismo: clasicamos en el grupo tal que (i)f (x|i , i ) = mx j f (x|j , j ). a
j

Obviamente, habitualmente no conocemos los parmetros (i , i ) de las distintas a clases por lo que hemos de estimarlos. Supongamos que tenemos ni individuos en la clase i y los vectores de caracter sticas son los vectores columna xij Rd (con i = 1, . . . , g y j = 1, . . . , ni ). Denotamos g ni ni i=1 j=1 xij j=1 xij , x = (6.13) xi = ni n donde n = decir,
g i=1

ni . Sea Si la matriz de varianzas o de dispersin de la clase i, es o Si =


ni j=1 (xij

xi )(xij xi ) ni 1

(6.14)

El vector i es estimado mediante i = xi . En cuanto a la estimacin de las matrices o i se utilizan dos estimadores. En el caso en que asumamos que todas son iguales entonces el estimador de = 1 = . . . = g es = Sp donde Sp =
g i=1 (ni

1)Si . ng

Si no asumimos que las distintas matrices de varianzas son iguales entonces cada i es estimada mediante Si . Es claro que el procedimiento indicado en la ecuacin 6.5 no es aplicable pues o no conocemos los parmetros. Veamos como queda el procedimiento en las dos a situaciones posibles: asumiendo igualdad de las matrices de covarianzas y asumiendo que son distintas. Bajo la hiptesis de matriz de varianza com n tendremos que o u 1 log[(i)f (x|i , Sp )] = log (i) + c (x xi ) S1 (x xi ). x p 2
1 Le quitamos a log[(i)f (x|i , Sp )] la parte que no depende de i dada por c 2 x S1 x x p y obtenemos la funcin o

1 Li (x) = log (i) + x S1 (x xi ). i p 2 Asignamos x al grupo que tiene un valor mayor de la funcin Li (x). Estas funciones o reciben el nombre de funciones discriminantes. Observemos que las diferencias entre distintas funciones Li son hiperplanos y por ello se habla de anlisis discriminante a lineal. Nota de R 45 Consideremos los datos iris tratados originalmente por Fisher. Vemos cmo se utiliza una muestra para estimar las matrices de covarianzas y los o vectores de medias mientras que clasicamos a los individuos no utilizados en la estimacin de los parmetros. o a #Se utilizan los datos iris de Fisher data(iris3) Iris <- data.frame(rbind(iris3[,,1], iris3[,,2], iris3[,,3]), 12

Sp = rep(c("s","c","v"), rep(50,3))) #Tomamos una muestra de entrenamiento train <- sample(1:150, 75) table(Iris$Sp[train]) z <- lda(Sp ~ .,Iris, prior = c(1,1,1)/3, subset = train) #Se clasifica a los individuos predict(z, Iris[-train,])$class (z1 <- update(z,. ~ . - Petal.W.)) En el caso en que no se asume una matriz de varianzas comn entonces u la regla de clasicacin consiste en clasicar donde es mxima la siguiente funcin o a o
1 Qi (x) = 2 log (i) log |Si | (x xi ) Si (x xi ).

(6.15)

Notemos que el ultimo trmino no es ms que la distancia de Mahalanobis de x al e a centro estimado de la clase, xi . La diferencia entre las funciones Qi para dos clases distintas es una funcin cuadrtica y por ello el mtodo recibe el nombre de anlisis o a e a discriminante cuadrtico. a Nota de R 46 (Fichero notaR107) Vamos a analizar el banco de datos de la diabetes. En este caso pretendemos clasicar entre tres grupos: no diabticos, diabee tes clnica y diabetes maniesta. Realizamos un anlisis discriminante lineal (asu a miendo matriz de varianzas comn) y un anlisis discriminante cuadrtico. u a a library(foreign) x= read.spss(file=../data/diabetes.sav,to.data.frame=T) attach(x) summary(x)

library(MASS) ##Discriminante lineal z = lda(TIPO ~ PESO + GPB + GAREA + IAREA + SSPG, CV=TRUE) z$class z$posterior table(TIPO,z$class) > table(TIPO,z$class) TIPO diabetes manifiesta diabetes quimica control diabetes manifiesta 26 6 1 diabetes quimica 0 30 6 control 0 3 73

#Discriminante cuadratico 13

z = qda(TIPO ~ PESO + GPB + GAREA + IAREA + SSPG, CV=TRUE) z$class z$posterior table(TIPO,z$class) > table(TIPO,z$class) TIPO diabetes manifiesta diabetes quimica control diabetes manifiesta 30 3 0 diabetes quimica 3 29 4 control 0 4 72

6.6.

Valoracin del procedimiento de clasicacin o o

Nuestros datos son (xi , yi ) con i = 1, . . . , n siendo xi el vector de caracter stica del individuo y denotando yi la clase poblacin o grupo al que pertenece realmente o el individuo. Tenemos unas probabilidades a posteriori (j|x) para cada x que nos queramos plantearla. Clasicamos x en la clase j tal que tiene mxima probabilidad a de las posibles. Pero el mtodo as construido, va bien o es un desastre? Parece e que todos coincidimos en que ir bien quiere decir clasicar a los individuos en los grupos a los que realmente pertenecen. Una primera prctica que pretende valorar la probabilidad (y por lo tanto la a frecuencia de veces que ocurre) de una clasicacin correcta es, una vez estimadas o las probabilidades a posteriori para los propios elementos de la muestra. Esto es, nos planteamos clasicar a los individuos utilizados para construir el procedimiento de clasicacin. Tendremos para cada data, yi , el grupo al que pertenece e yi el o grupo en el que lo clasicamos. Podemos considerar una valoracin del resultado de o la clasicacin la siguiente cantidad, o
n

I=
i=1

yi ,yi , n

(6.16)

donde y,y = 1 si y = y y cero en otro caso. La cantidad denida en 6.16 es de uso habitual en la literatura de reconocimiento de patrones. Es, sin duda, un modo razonable de valorar la calidad del procedimiento de clasicacin. Se queda pobre. o Al menos parece insuciente. Cmo nos equivocamos cuando clasicamos? La sio guiente opcin habitual es utilizar la tabla de clasicacin en donde cruzamos los o o valores (yi , yi ). En esta tabla tendremos en la la (r, c) el n mero de casos que oriu ginalmente son de la clase r y los hemos clasicado en el grupo c. Valorando la tabla de clasicacin podemos valorar el mtodo de clasicacin. Es importante tener en o e o cuenta aqu que no todos los errores de clasicacin tienen la misma importancia. o Independientemente de la valoracin numrica que hagamos del procedimiento o e de clasicacin hemos de tener en cuenta sobre qu casos estamos realizando eso e ta valoracin. Si un mismo caso lo utilizamos para construir el procedimiento de o valoracin y lo volvemos a utilizar para clasicarlo estamos sesgando la valoracin o o del procedimiento a favor del mismo. Un procedimiento de clasicacin siempre ir o a mejor con los casos que utilizamos para construirlo y peor sobre otros casos. Hemos de intentar corregirlo. Una primera idea es dejar uno fuera cada vez. Para cada j consideramos toda la muestra menos xj . Utilizando el resto de la muestra estimamos los vectores de 14

medias y las matrices de covarianzas y, nalmente, las probabilidades a posteriori del individuo j en cada clase. Lo clasicamos del modo habitual. Repetimos el procedimiento para cada j y construimos la tabla correspondiente. En ingls es la e tcnica conocida como leaving one out. Realmente el mtodo de clasicacin que e e o valoramos en cada ocasin no es exactamente el mismo pero no es muy diferente. En o cada ocasin solamente estamos prescindiendo de un caso y los vectores de medias o y matrices de covarianzas no se modican mucho. Estamos valorando esencialmente el mismo mtodo. e Una segunda opcin; mejor en su validez peor en sus necesidades. Si tenemos una o muestra de tama o n elegimos una muestra sin reemplazamiento de tama o m. Los n n m datos seleccionados son utilizadas para estimar las probabilidades a posteriori y los n m restantes son clasicados y podemos valorar las distintas proporciones de error. Es una estimacin del error basada en un mtodo de aleatorizacin. Si elegimos o e o las sucesivas muestras con reemplazamiento tendr amos un mtodo bootstrap. e Nota de R 47 (Fichero notaR149) Seguimos analizando los datos de la orina (ver nota 41. Notemos que consideramos probabilidades a priori correspondientes a las proporciones en la muestra. Nos limitamos a construir la tabla de clasicacin. o

##Leemos los datos library(foreign) x = read.spss(file=../data/cristal.sav,to.data.frame=T) x[x==-1] = NA ##No estaba definido el -1 como dato faltante ##en el fichero original cc = complete.cases(x) ## Vemos los casos en que no hay datos ## faltante attach(x[cc,]) ## Suponemos matrices de covarianzas iguales y probabilidades a priori ## dadas por las proporciones de cada clase en la muestra library(MASS) z1 = lda( GRUPO ~ CALCIO + CONDUC + GRAV + OSMO + PH + UREA,CV=TRUE)

#Tabla de clasificaciones correctas table(GRUPO,z1$class) > table(GRUPO,z1$class) GRUPO ausencia de cristales presencia de cristales ausencia de cristales 42 2 presencia de cristales 14 19

Nota de R 48 (Fichero notaR139) Consideramos unos datos de correo electro nico. El objetivo del anlisis es decidir si el correo es basura o no basndonos en a a informacin de dicho correo. Estos datos se pueden encontrar en [3]. o Realizamos un anlisis discriminante linear y un anlisis cuadrtico. Vemos que a a a el lineal nos proporciona mejores resultados. 15

#Anlisis discriminante a library(MASS) x= read.table(file="../data/spambase_data",sep=",") attach(x)

xnam <- paste("V", 1:57, sep="") (fmla = as.formula(paste("y ~ ", paste(xnam, collapse= "+")))) y = x[,58] z = lda(fmla, data=x, prior = c(1,1)/2,CV=T) table(V58,z$class) > table(V58,z$class) V58 0 1 0 2622 166 1 263 1550 z = qda(fmla, data=x, prior = c(1,1)/2,CV=T) table(V58,z$class) > table(V58,z$class) V58 0 1 0 2086 695 1 86 1723 ##Recuperamos el anlisis discriminante lineal a entrenamiento = sample(nrow(x),2000) #Elegimos la muestra de entrenamiento #aleatoriamente table(y[entrenamiento]) #Vemos la distribucin del correo o #en la muestra de entrenamiento z = lda(fmla, data=x, prior = c(1,1)/2,subset=entrenamiento) #Vemos la tabla de clasificacin sobre los datos de entrenamiento o table(predict(z, x[entrenamiento,])$class,y[entrenamiento]) #Vemos la tabla de clasificacin sobre el resto de los datos o table(predict(z, x[-entrenamiento,])$class,y[-entrenamiento]) ##Repetimos en muestras con reemplazamiento

entrenamiento = sample(nrow(x),2000,replace=T) #Elegimos la muestra de entrenamiento ##con reemplazamiento #aleatoriamente table(y[entrenamiento]) #Vemos la distribucin del correo o #en la muestra de entrenamiento 16

z = lda(fmla, data=x, prior = c(1,1)/2,subset=entrenamiento) #Vemos la tabla de clasificacin sobre los datos de entrenamiento o table(predict(z, x[entrenamiento,])$class,y[entrenamiento]) #Vemos la tabla de clasificacin sobre el resto de los datos o table(predict(z, x[-entrenamiento,])$class,y[-entrenamiento])

6.7.

Variables discriminantes cannicas o discrimio nantes lineales

Vamos a estudiar una tcnica de reduccin de la dimensin relacionada con el e o o planteamiento que del anlisis discriminante lineal hizo Fisher. Consideramos las a matrices W y B denidas como
g ni g

W =
i=1 j=1

(xij xi )(xij xi ) =
g

i=1

(ni 1)Si ,

(6.17)

y B=

ni

i=1 j=1

(i x )(i x ) = x x

i=1

ni (i x )(i x ) x x

(6.18)

Notemos que Sp = W ng (6.19)

Estas matrices reciben el nombre de matrices intra grupos y entre grupos respectivamente. Son las versiones matriciales de las sumas de cuadrados intra y entre grupos habituales en anlisis de la varianza. a Es claro que cuando ms agrupados estn los datos dentro de los grupos y ms a e a separados estn para grupos distintos tendremos que la magnitud de W ha de ser e menor que la de B. Supongamos que reducimos las observaciones multivariantes xij a datos univariantes mediante tomando zij = c xij . Las sumas de cuadrados intra y entre vendr dadas por c W c y c Bc. El cociente Fc = c Bc/c W c nos compara an la variabilidad intra con la variabilidad entre. Fisher (1936) introdujo el anlisis a discriminante lineal buscando el vector c tal que el cociente Fc sea el mayor posible. Ese fue su objetivo inicial. La matriz W es suma de matrices semidenidas positivas por lo que es denida positiva y consideramos su descomposicin de Cholesky dada por W = T T . o Tomamos b = T c. Se tiene Fc = b (T )1 BT 1 b b Ab c Bc = = = a Aa, W c b c b bb (6.20)

donde a = b/ b , esto es, a tiene mdulo unitario y A = (T )1 BT 1 . Se nos o plantea el problema de maximizar a Aa con la restriccion de a a = 1. Por resultados estndar del lgebra lineal se tiene que a1 es el vector propio de A con el mayor a a propio 1 vericando que 1 = a Aai . Hemos encontrado una combinacin lineal o 1 que, en el sentido que hemos indicado, es ptima a la hora de separar los grupos. o Parece lgico buscar la siguiente combinacin lineal que verique el mismo criterio o o 17

de optimalidad pero que el vector correspondiente sea ortogonal al ya calculado. Nos planteamos pues maximizar a Aa con la restriccion de a = 1 y que sea ortogonal con el anterior. La solucin viene dada por el vector propio de A asociado a su seo gundo valor propio por orden de magnitud, 2 (Aa2 = 2 a2 por lo que 2 = a Aa2 ). 2 Procedemos del mismo modo obteniendo k direcciones ortogonales que nos dan las combinaciones ptimas que separan a los grupos. El valor de k es el m o nimo entre el n mero de grupos menos uno, g 1 y el n mero de datos n, k = m g 1, n. u u n Notemos que los sucesivos ar constituyen una base ortonormal tales que (T )1 BT 1 ar = Aar = r ar , con 1 2 . . . k . Si multiplicamos por la izquierda por la matriz T 1 (n g)1/2 se deduce que W 1 Bcr = r cr , donde cr = (n g)1/2 T 1 ar . En consecuencia W 1 B tiene valores propios r y vectores propios cr con r = 1, . . . , k. Adems los vectores ar = T cr (n g)1/2 a constituyen una base ortonormal. Consideremos la matriz C que tiene por la rsima el vector cr . Sea zij = Cxij . Estos valores reciben el nombre de coordenadas e discriminantes. Vemos que estas coordenadas pretenden destacar las diferencias entre los grupos con un orden decreciente de relevancia. Tenemos que decidir cn o cuantas de ellas nos quedamos. Es habitual estudiar los cocientes
j i=1 k i=1

i i

(6.21)

como funcin de j y quedarse con las coordenadas discriminantes hasta un j prximo o o a uno. Es muy importante darse cuenta que las coordenadas discriminantes estn tipia cadas y son independientes entre ellas. Recordemos que W = T T y que la matriz de covarianzas agrupada viene dada por Sp = W/(g 1). Por tanto tendremos que c Sp cs = (n g)1 c T T cs = a as = rs , r r r (6.22) donde rs = 1 si r = s y cero en otro caso. Tenemos pues que CSp C = Ik . Asumiendo que las matrices de dispersin son iguales para los distintos grupos o tendremos que cov(c xij , c xij ) = c cs y reemplazando por Sp tenemos que los r s r zij tienen covarianzas muestrales nulas y varianzas muestrales unitarias. Nota de R 49 (Fichero notaR108) Repetimos el anlisis discriminante tanto a para los datos de cristales en la orina como para los datos de la diabetes. En la gura 6.2 vemos un histograma de la primera variable discriminante cannica en el o primer y segundo grupo. En la gura 6.3 tenemos una representacin conjunta de las dos variables diso criminantes cannicas. o library(foreign) #Leemos los datos de un fichero SPSS x = read.spss(file=../data/cristal.sav,to.data.frame=T) #No estaba bien definido el dato faltante x[x==-1] = NA cc = complete.cases(x) x = x[cc,] attach(x) 18

z <- lda( GRUPO ~ CALCIO + CONDUC + GRAV prior = c(1,1)/2)

+ OSMO + PH + UREA,

if(dib) postscript(file=fig108a.ps,horizontal=F) plot(z) #Figura a if(dib) dev.off() library(foreign) x= read.spss(file=../data/diabetes.sav,to.data.frame=T) attach(x)

z = lda(TIPO ~ PESO + GPB + GAREA + IAREA + SSPG) if(dib) postscript(file=fig108b.ps,horizontal=F) plot(z) #Figura b if(dib) dev.off() if(dib) postscript(file=fig108c.ps,horizontal=F) pairs(z) #Figura c if(dib) dev.off()

0.0 2

0.2

0.4

0.6

0.8

1.0

group ausencia de cristales

0.0 2

0.2

0.4

0.6

0.8

1.0

group presencia de cristales

Figura 6.2:

19

diabetes manifiesta diabetes manifiesta diabetes manifiesta diabetes manifiesta diabetes manifiesta diabetes manifiesta control control

diabetes manifiesta diabetes manifiesta diabetes manifiesta diabetes manifiesta diabetes manifiesta diabetes manifiesta

control control control control control controlcontrol control control controlcontrol control control control control control diabetes manifiesta manifiesta control control control diabetes manifiesta diabetesdiabetes manifiesta control control control control control control control control control control control control control control control control control control control controlcontrol control diabetes manifiesta diabetes quimica control control control diabetes manifiesta diabetes quimica control control diabetes manifiesta control diabetes manifiesta control control control control diabetescontrol control quimica control diabetes manifiesta diabetes manifiesta controlcontrol diabetes manifiesta control diabetes quimicaquimica control control control control control diabetes diabetes manifiesta diabetes manifiesta diabetes quimicaquimicacontrolcontrol control diabetes quimica diabetescontrol control control diabetes quimica diabetes manifiesta diabetes quimica diabetes manifiesta diabetes quimica control quimica diabetes manifiestadiabetes quimicadiabetesquimica diabetes manifiesta diabetes diabetes quimica diabetes quimica diabetes quimica diabetes quimica diabetes quimica diabetes manifiesta control control diabetes quimica diabetes quimica diabetes quimica diabetes quimica diabetes quimica diabetes manifiesta diabetes quimica diabetes quimica diabetes manifiesta diabetes manifiesta diabetes quimica diabetes quimica diabetes quimica diabetes quimica diabetes quimica diabetes quimica diabetes quimica diabetes quimica diabetes quimica control

LD2

diabetes quimica

2 LD1

Figura 6.3:

6.8.

Algunos ejemplos

Finalizamos el tema con algunos ejemplos de anlisis discriminante. a

Nota de R 50 (Fichero notaR142) Los datos se pueden encontrar en http://www.stat.wisc.edu/ yand El siguiente texto est tomado de dicha pgina y describen las variables. a a The measurements were coded based on body part -- head (H), thorax (T), wing (W) or gonadium (G) -- and kind of measurement -- width (W), height (H) and length (L). The gonadium (also known as gastral tergite) has two length and three width measurements. Realizamos un anlisis discriminante en donde a partir de las caractersticas a morfolgicas pretendemos saber si es una abeja reina o bien es una obrera. o library(MASS) x=read.table(file="../data/wasp.dat",header=T) attach(x) z = lda(caste ~TL+WL+HH+HW+TH+TW+G1L+G2Wa,prior=c(1,1)/2) plot(z) z = lda(caste ~TL+WL+HH+HW+TH+TW+G1L+G2Wa,prior=c(1,1)/2,CV=TRUE)

20

2 4

control control control control control control control control control control control control control control control control control control control control control control control control controlcontrol control control control controlcontrol controlcontrol control control control controlcontrol control control control control control control control control control control control control control control control control control control control control control control control control control control control control controlcontrol diabetes quimica controlcontrol control control diabetes quimica control diabetescontrol diabetes diabetes quimica quimica quimica diabetes quimica control diabetes quimica manifiesta diabetes quimica control diabetes diabetes quimica diabetes quimica diabetes quimica diabetes diabetes quimica diabetes diabetes quimica diabetes quimica quimica diabetes quimica quimica diabetes quimica diabetes diabetes quimica diabetes quimica quimica diabetes quimica diabetes manifiesta diabetes quimicaquimica quimica diabetes diabetes diabetes quimica diabetes quimica diabetes quimicaquimica diabetesdiabetes manifiesta diabetes quimica diabetes quimica diabetes quimica diabetes quimica diabetes manifiesta diabetes quimica diabetes manifiesta diabetes quimica

LD1

diabetes quimica diabetes diabetes manifiesta manifiesta diabetes manifiesta diabetes manifiesta diabetes manifiesta diabetes manifiesta manifiesta diabetes manifiesta diabetes diabetes manifiesta diabetesdiabetes manifiesta manifiesta diabetes manifiesta diabetes manifiesta diabetes diabetes manifiestamanifiesta diabetes manifiesta diabetes manifiesta diabetes manifiesta diabetes manifiesta diabetes manifiesta diabetes manifiestadiabetes manifiesta diabetes diabetes diabetes manifiesta manifiesta manifiesta diabetes manifiesta diabetes manifiesta diabetes manifiesta

diabetes manifiesta diabetes manifiesta diabetes manifiesta diabetes manifiesta diabetes manifiesta diabetes manifiesta control control

diabetes manifiesta diabetes manifiesta diabetes manifiesta diabetes manifiesta diabetes manifiesta diabetes manifiesta

control control control control control control control control control control control control control control control control diabetes manifiesta control diabetes diabetes manifiesta manifiesta control control control control diabetes manifiesta control control control control control control control control control control control control control control control control control controlcontrol diabetes diabetes diabetes quimica control manifiesta control control control manifiesta control diabetes manifiesta control diabetesdiabetes quimica manifiesta control control control control control control control diabetescontrol quimica control diabetes manifiesta diabetes manifiesta control control diabetes manifiesta control control control diabetes quimica control control control diabetes manifiesta diabetes quimica control diabetes manifiesta diabetes quimica diabetescontrol control quimica diabetes quimica control control control diabetes quimica diabetes manifiesta diabetes quimica control diabetes manifiesta diabetes quimica quimica diabetes manifiestadiabetes quimica diabetes manifiesta diabetesdiabetes quimica diabetes quimica diabetes quimica diabetes quimica diabetes quimica diabetes quimica diabetes manifiesta control control diabetes quimica diabetes quimica diabetes quimica diabetes quimica diabetes diabetes quimica quimica diabetes manifiesta diabetes quimica diabetes quimica diabetes manifiesta manifiesta diabetes diabetes quimica

LD2

diabetes quimica control diabetes quimica diabetes quimica diabetes quimica diabetes quimica diabetes quimica diabetes quimica

diabetes quimica

Figura 6.4: table(caste,z$class) cbind(caste,z$posterior) z.q = qda(caste ~TL+WL+HH+HW+TH+TW+G1L+G2Wa,prior=c(1,1)/2,CV=TRUE) table(z$class,z.q$class)

Nota de R 51 (Fichero notaR144) El banco de datos wbca contiene informacin sobre un estudio de cncer de mama en el estado norteamericano de Wiscono a sin. La variable Class indica si la mujer tiene cncer de mama o no (valores 1 y 0 a respectivamente). El resto son variables que describen el estado de la paciente. Pretendemos clasicar a la paciente como enferma o no de cncer utilizando el resto a de las variables. Realizamos para ello un anlisis discriminante lineal. Tenemos una a muestra bastante grande. Elegimos una muestra de entrenamiento para estimar las probabilidades a posteriori. Para ellos elegimos al azar 400 mujeres de la muestra inicial. library(faraway) library(MASS)

attach(wbca) 21

names(wbca) wbca.lda = lda(Class ~ Adhes+BNucl+Chrom+Epith+Mitos+NNucl+Thick+UShap+USize,CV=T) plot(wbca.lda) #fig144a

wbca.lda = lda(Class ~ Adhes+BNucl+Chrom+Epith+Mitos+NNucl+Thick+UShap+USize,CV=T) table(Class,wbca.lda$class)

train <- sample(1:nrow(wbca), 400) wbca.lda0 = lda(Class ~ Adhes+BNucl+Chrom+Epith+Mitos+NNucl+Thick+UShap+USize,subset=trai wbca.lda0$class[train] table(wbca.lda0$class[train],Class[train]) table(wbca.lda$class,Class)

0.0 6

0.2

0.4

0.6

0.8

2 group 0

0.0 6

0.2

0.4

0.6

0.8

2 group 1

Figura 6.5:

22

Cap tulo 7

Modelos lineales generalizados


En este tema se habla de modelos lineales generalizados. Constituyen, y de ah su nombre, una extensin de los modelos lineales. A diferencia de los modelos lineales o en donde nos basamos en la distribucin normal, aqu se utilizan otros modelos para o la variable respuesta. Tambin la relacin que liga la media de la variable respuesta e o con las variables predictoras no se supone lineal sino que se utiliza una funcin link o para relacionar dicha media con una combinacin lineal de las variables predictoras. o Sin duda alguna, la referencia fundamental es el texto de Agreste ([1]). Asociado a este texto tenemos un texto de Laura Thomson [? ] en donde se reproducen todos los anlisis de datos del texto de Agresti con R. Hay una versin ms reducida de a o a [1] que es la referencia [? ].

7.1.

Componentes de un modelo lineal generalizado

Los modelos lineales generalizados (GLM) extiende los modelos de regresin o ordinaria en dos puntos: (i) consideran que la respuesta no tiene necesariamente una distribucin normal y (ii) utiliza funciones que modelizan la media. o En su denicin intervienen tres componentes: o Componente aleatoria Identica la variable respuesta Y y su distribucin de o probabilidad. Componente sistemtica Especica las variables explicativas (independientes, a predictoras) utilizadas en la funcin predictora lineal. o Funcin link Especica la funcin de EY que la expresa como una combinacin o o o lineal de las variables predictoras. La componente aleatoria de un GLM consiste de una variable aleatoria Y con observaciones independientes (y1 , . . . , yN ). Suponemos la distribucin de Y en la o familia exponencial natural, donde la forma de la densidad viene dada por f (yi ; i ) = a(i )b(yi ) exp{yi Q(i )}. (7.1)

En esta familia de distribuciones de probabilidad se incluyen la Poisson y la binomial. Notemos que i var para los distintos i dependiendo de los valores de las a variables predictoras. Q() recibe el nombre de parmetro natural. a 1

La componente sistemtica de un GLM es el vector (1 , . . . , N ) donde a i =


j

j xij , con i = 1, . . . , N,

(7.2)

donde xij es el valor del j-simo predictor en el i-simo individuo. La combinae e cin lineal j j xij es el predictor lineal. Notemos que, como es habitual, se suele o considerar que uno de los predictores xij vale uno para todos los i de modo que consideramos el trmino independiente (que denotaremos a menudo por ). e La tercera componente es la funcin link g. Mediante esta funcin relacionamos o o las componentes aleatoria y sistemtica. Sea i = E(Yi ) con i = 1, . . . , N . Vamos a a suponer que i = g(i ) (7.3) donde la funcin link g la suponemos montona y diferenciable. En consecuencia o o tenemos j xij , con i = 1, . . . , N. (7.4) g(i ) =
j

El modelo lineal es un modelo lineal generalizado ya que Yi N (i , 2 ) donde a o i = j j xij . En consecuencia el parmetro natural es la media y la funcin link es la identidad. De hecho, los modelos lineales generalizados surgen como una extensin o natural cuando la variable respuesta no necesariamente ha de ser continua. En un modelo lineal la relacin que liga a los predictores con la media de la variable es o directa: la media es funcin lineal de los predictores. Sin embargo, una modelizacin o o tan simple como esta no es asumible cuando la respuesta es una variable binomial o Poisson, o multinomial. Sin embargo, se observ que muchos de los mtodos que se o e utilizaban para estudiar el modelo lineal eran aplicables para este tipo de modelos que proporcion un marco com n a procedimientos que ya se estaban usando en o u Estad sticas previamente.

7.1.1.

Modelos logit binomiales para datos binarios

Tenemos respuesta binaria (xito como 1 y fracaso como 0), esto es, Y e Bin(1, ). Notemos que f (y | ) = y (1 )1y = (1 )[/(1 )]y = (1 ) exp y log por lo que pertenece a la familia exponencial natural con = , 1 , 1, log . 1 (7.6) (7.7) (7.8) (7.9)

(7.5)

a() = b(y) = Q() =

Vemos que el parmetro natural log 1 es el logit de . Es pues el link cannico. a o Los GLM que utilizan un link logit reciben el nombre de modelos logit.

7.1.2.

Modelo loglineal de Poisson para conteos

La variable respuesta son conteos. La distribucin ms simple para este tipo de o a datos es la distribucin de Poisson. Sea Y el conteo aleatorio y = EY . La funcin o o 2

de probabilidad de la distribucin de Poisson la podemos expresar como o f (y | ) = e y 1 = exp() y! y! exp(y log ), con y = 0, 1, . . . (7.10)

Esta familia de distribuciones pertenece a la familia exponencial natural con = , exp(), 1 y! log . (7.11) (7.12) (7.13) (7.14) a() = b(y) = Q() =

El parmetro natural es log y en consecuencia la funcin link cannica es el logaa o o ritmo. El modelo que utiliza este link es log =
j

j xij , con i = 1, . . . , N.

(7.15)

Este modelo recibe el nombre de modelo loglineal de Poisson.

7.1.3.

Desviacin o

Sean y = (y1 , . . . , yN ) los valores observados y L(; y) la verosimilitud expresada en trminos del vector de medias = (1 , . . . , N ). Sea L(; y) el mximo de la loge a verosimilitud como funcin de . Si no nos restringimos a un modelo determinado o entonces L(; y) = L(y; y). (7.16) En este modelo perfecto se tiene un parmetro distinto por observacin. Este modelo a o lo llamamos modelo saturado. Este modelo no tiene ninguna utilidad pues no supone ninguna reduccin de los datos, ning n tipo de modelizacin con lo que esto supone o u o de simplicacin. Sin embargo, es un modelo base con el que compararse. o Denimos la desviacin como o 2 L(; y) L(y; y) . (7.17)

La desviacin es el test del cociente de verosimilitudes donde la hiptesis nula es o o el modelo que estamos considerando frente a la alternativa ms general que supone a la negacin de este modelo. o La distribucin asinttica de la desviacin es una 2 (N p) donde N es el o o o n mero de observaciones (igual al n mero de parmetros en el modelo saturado) y u u a p el n mero de parmetros del modelo asumido en la hiptesis nula. u a o

7.2.

GLM para datos binarios


Y Bi(1, (x)),

La variable respuesta Y se supone binaria. Sea x el vector de predictores.

con Adems: a y var(Y ) = (x)(1 (x)). 3 P (Y = 1) = (x), P (Y = 0) = 1 (x). EY = P (Y = 1) = (x).

Cuadro 7.1: Relacin entre el ronquido (las) y la enfermedad card o Iaca (columnas) Si 24 35 21 30 No 1355 603 192 224

Nunca Ocasionalmente Casi cada noche Cada noche

7.2.1.

Funcin link identidad o


(x) = + x,

si consideramos un solo predictor. El problema que se nos plantea es que no tenemos asegurada que dicha probabilidad est entre cero y uno. Obviamente, es el cambio e en la probabilidad por un cambio unitario de x. Notemos que Y depende de x a travs de (x) . La varianza de la varianza tiende e a cero cuando (x) se aproxima bien a cero bien a uno.

7.2.2.

Ejemplo: Ronquido y enfermedad cardAaca


4.2, pgina 121 a

Construimos el banco de datos. # Datos de tabla

n<-c(1379, 638, 213, 254) snoring<-rep(c(0,2,4,5),n) y<-rep(rep(c(1,0),4),c(24,1355,35,603,21,192,30,224))

7.3.

GLM para conteos

La variable respuesta Y son datos de conteo. Se asume que sigue una distribucin o de Poisson. Denotamos = EY =. Un modelo loglineal con una sola variable predictora ser Ia log = + x, o de otro modo = exp( + x) = e e
x

que en palabras signica que un incremento unitario de la variable x supone que la media de Y , , corresponde a la asociada a x multiplicada por e .

7.3.1.

Apareamiento de cangrejos herradura

Es un estudio de apareamiento de cangrejos herradura. Cada hembra tiene un macho residiendo en su nido. En el estudio se trata de investigar qu otros factores e inuyen en que la hembra tenga otros machos, llamados satlites, residiendo en el e entorno. Como variables explicativas tenemos el color de la hembra (C), estado de la columna (S), anchura del caparazn (W), peso (Wt) y como variable respuesta o tenemos el n mero de satlites (Sa). De momento vamos a usar una sola variable u e predictora, la anchura del caparazn W. o Leemos los datos. 4

##tabla 4.3 table.4.3 <read.table(../data/crab.txt,col.names=c("C","S","W","Sa","Wt")) ##Pasamos los pesos a kilogramos table.4.3[,5] <- table.4.3[,5]/1000 En la siguiente gura representamos el n mero de sattites frente a la anchura u e del caparazn. o # Figura 4.3 plot.table.4.3<-aggregate(rep(1,nrow(table.4.3)), list(Sa=table.4.3$Sa, W=table.4.3$W), sum) plot.table.4.3$Sa<-as.numeric(as.vector(plot.table.4.3$Sa)) plot.table.4.3$W<-as.numeric(as.vector(plot.table.4.3$W)) plot(y=plot.table.4.3$Sa,x=plot.table.4.3$W,xlab="Width (cm)", ylab="Number of Satellites", bty="L", axes=F, type="n") axis(2, at=1:15) axis(1) text(y=plot.table.4.3$Sa,x=plot.table.4.3$W,labels=plot.table.4.3$x) Realmente no es fcil observar ning n patrn de comportamiento. Agrupamos a u o las hembras de grupos dependiendo de la anchura. En concreto las categor consiIas deradas sern 0, 23,2], (23,2, 24,2], (24,2, 25,2], (25,2, 26,2], (26,2, 27,2], (27,2, 28,2], a (28,2, 29,2], (29,2, Inf ]. Representamos, en abscisas, la anchura media en cada grupo y, en ordenadas, el n mero medio de satlites. u e # figure 4.4 table.4.3$W.fac<-cut(table.4.3$W, breaks=c(0,seq(23.25, 29.25),Inf)) plot.y<-aggregate(table.4.3$Sa, by=list(W=table.4.3$W.fac), mean)$x plot.x<-aggregate(table.4.3$W, by=list(W=table.4.3$W.fac), mean)$x plot(x=plot.x, y=plot.y, ylab="Number of Satellites", xlab="Width (cm)", bty="L",axes=F, type="p", pch=16) axis(2, at=0:5) axis(1, at=seq(20,34,2)) Vamos a realizar una regresin de Poisson donde utilizados el logaritmo como o funcin link. o log.fit<-glm(Sa~W, family=poisson(link=log),data=table.4.3) summary(log.fit) summary(log.fit) Call: glm(formula = Sa ~ W, family = poisson(link = log), data = table.4.3) Deviance Residuals: Min 1Q Median -2.8526 -1.9884 -0.4933

3Q 1.0970

Max 4.9221

Coefficients: Estimate Std. Error z value Pr(>|z|) (Intercept) -3.30476 0.54224 -6.095 1.10e-09 *** W 0.16405 0.01997 8.216 < 2e-16 *** (Dispersion parameter for poisson family taken to be 1) Null deviance: 632.79 on 172 5 degrees of freedom

Residual deviance: 567.88

on 171

degrees of freedom AIC: 927.18

Number of Fisher Scoring iterations: 6 Aparecen los estimadores de los coecientes, sus errores estndar aproximados, a la desviacin residual y un resumen de los residuos de la desviacin. o o La desviacin nula es la desviacin cuando suponemos en el modelo solamente o o el trmino constante. En este caso asumiendo que el coeciente de W es nulo. La e diferencia entre las desviaciones considerando solamente la constante o el modelo que incluye a la variable predictora W puede obtenerse del siguiente modo: log.fit$null.deviance-log.fit$deviance Y el resultado es 1] 64.91309 Este es el valor del estad Istico correspondiente al test del cociente de verosimilitudes. Tiene, en este caso, una distribucin aproximada ji-cuadrado con un grado de o libertad. El p-valor vendr dado por Ia > 1-pchisq(64.91309,df=1) [1] 7.771561e-16 que como vemos es claramente signicativo. Se rechaza la hiptesis nula de que el o coeciente de W es nulo. En la salida que proporciona la funcin summary aparece o un z value que vale 6,095 con un p-valor asociado de 1,10e 09. Esto corresponde con el test de Wald. El test del cociente de verosimilitudes suele ser ms able. a La funcin summary nos devuelve un objeto que tiene mucha ms informacin. o a o Con la funcin attributes podemos verlo. o attributes(summary(log.fit)) Cuya salida es $names [1] "call" [5] "aic" [9] "df.null" [13] "aliased" "cov.scaled" "terms" "contrasts" "iter" "dispersion" "family" "deviance" "df.residual" "null.deviance" "deviance.resid" "coefficients" "df" "cov.unscaled" [17]

$class [1] "summary.glm" Por ejemplo podemos obtener los coecientes como summary(log.fit)$coefficients que nos devuelve Estimate Std. Error z value Pr(>|z|) (Intercept) -3.3047572 0.54224155 -6.094622 1.096964e-09 W 0.1640451 0.01996535 8.216491 2.095450e-16 Es decir, el modelo ajustado es log = 3,305 + 0,164x Podemos utilizar tambin el ajuste original y ver la informacin que contiene el e o objeto que contiene el ajuste. 6

attributes(log.fit) Que nos devuelve $names [1] "coefficients" [4] "effects" [7] "qr" [10] "deviance" "iter" "df.residual" "boundary" "terms" [25] "data" "method" "residuals" "fitted.values" "R" "rank" "family" "linear.predictors" "aic" "null.deviance" [13] "weights" "prior.weights" [16] "df.null" "y" [19] "converged" "model" [22] "call" "formula" "offset" "control" [28] "contrasts" "xlevels"

$class [1] "glm" "lm" Por ejemplo, los valores ajustados para la respuesta, es decir, los valores medios estimados se pueden obtener como log.fit$fitted.values o bien como fitted(log.fit) De un modo similar podemos obtener los residuos o los coecientes utilizando las funciones resid y coef. Podemos tambin predecir la respuesta con la funcin predict del siguiente e o modo. predict.glm(log.fit, type="response", newdata=data.frame(W=26.3)) Estamos haciendo la prediccin de la media del conteo para un valor de W de 26,3. o Vamos a ajustar ahora un modelo de Poisson utilizando como funcin link la o identidad. id.fit<-glm(Sa~W, family=poisson(link=identity),data=table.4.3, start=coef(log.fit)) summary(id.fit) que nos produce lo siguiente Call: glm(formula = Sa ~ W, family = poisson(link = identity), data = table.4.3, start = coef(log.fit)) Deviance Residuals: Min 1Q Median -2.9113 -1.9598 -0.5405

3Q 1.0406

Max 4.7988

Coefficients: Estimate Std. Error z value Pr(>|z|) (Intercept) -11.52547 0.67767 -17.01 <2e-16 *** W 0.54925 0.02968 18.50 <2e-16 ***

(Dispersion parameter for poisson family taken to be 1) Null deviance: 632.79 Residual deviance: 557.71 on 172 on 171 degrees of freedom degrees of freedom AIC: 917

Number of Fisher Scoring iterations: 22 Ahora el modelo ajustado es = 11,41 + 0,55x Vemos pues ahora que la anchura del caparazn tiene un efecto aditivo en lugar de o ser multiplicativo. Vamos a comparar los dos modelos que se han ajustado. plot(x=plot.x, y=plot.y, ylab=expression(paste("Mean number of satellites,", {mu})), xlab="Width (cm)",bty="L",axes=F, type="p", pch=16) axis(2, at=0:5) axis(1, at=seq(20,34,2)) ind<-order(table.4.3$W) lines(x=table.4.3$W[ind],y=log.fit$fitted.values[ind]) lines(x=table.4.3$W[ind],y=id.fit$fitted.values[ind]) arrows(x0=23.5,y0=2.9,x1=23.5,y1=predict(log.fit,newdata=data.frame(W=23.5), type="response"),length=.2) text(x=23.5,y=3,"Log Link") arrows(x0=29.75,y0=3.1,x1=29.75,y1=predict(id.fit,newdata=data.frame(W=29.75), type="response"),length=.2) text(x=29.75,y=2.9,"Identity Link")

7.4.

Respuesta ordinal: modelos logit acumulados

Vamos a suponer que la variable respuesta Y es ordinal y toma valores 1, . . . , J. Las variables independientes o predictoras sern x = (x1 , . . . , xd ). Pretendemos a modelizar la distribucin de la variable Y condicionada a los valores de x. Hemos o de tener en cuenta que por ser ordinal la variable respuesta tiene sentido (y es la opcin ms simple) modelizar directamente la funcin de distribucin condicionada o a o o dada por P (Y j|x), es decir, la probabilidad de que la variable sea igual o menor que cada posible valor j condicionada a los valores de x. Si denotamos j (x) como la probabilidad de que Y tome el valor j para un x dado, es decir, j (x) = P (Y = j|x) entonces P (Y j|x) = j P (Y = i|x) = j i (x). i=1 i=1 Hay distintos modelos propuestos para este tipo de datos [1], cap tulo 7. El ms extendido se basa en dar un modelo para el logit de la funcin de distribucin a o o condicionada de Y que recibe el nombre de logit acumulado que vendr dado por a logit(P (Y j|x)) = log P (Y j|x) = log P (Y > j|x)
j i=1

i (x) i (x)

J i=j+1

(7.18)

El modelo de odds proporcionales es el siguiente


d

logit(P (Y j|x)) = j +

i=1

i xi , j = 1, . . . , J 1

(7.19)

Es importante darse cuenta de que cada variable independiente tiene un solo coeciente asociado y que no depende del valor j. La dependencia de j aparece en las intersecciones j . 8

Teniendo en cuenta que si j < j entonces logit(P (Y j|x)) logit(P (Y j |x)) se ha de vericar que j j . En denitiva los distintos j han de crecer con j. Notemos tambin que si consideramos dos vectores de variables independientes e x1 = (x11 , . . . , x1d ) y x2 = (x21 , . . . , x2d ) entonces
d

logit(P (Y j|x1 )) logit(P (Y j|x2 )) = j + pero logit(P (Y j|x1 )) logit(P (Y j|x2 )) = log En denitiva estamos armando que P (Y j|x1 )/P (Y > j|x1 ) log = P (Y j|x2 )/P (Y > j|x2 )
d i=1

i=1

i (x1i xi2 ),

(7.20)

P (Y j|x1 )/P (Y > j|x1 ) . (7.21) P (Y j|x2 )/P (Y > j|x2 )

i (x1i x2i ).

(7.22)

Al cociente que aparece en el lado izquierdo de la ecuacin anterior recibe el nombre o de cociente de odds acumulado. Los odds de un respuesta menor o igual a j para x = x1 es
d

exp
i=1

i (x1i xi2 )

veces los odds para x = x2 . Adems vemos que esta constante de proporcionalidad a no depende del valor de j. Por ello al modelo que estamos asumiendo se le suele llamar el modelo de odds proporcionales ([? ]). Intentemos expresar el signicado de la ecuacin 7.22 de un modo simple. Suo pongamos que los vectores x1 y x2 son iguales salvo en la componente i-sima. En e denitiva, ambos individuos coinciden salvo en dicha componente y supongamos, adems, que dieren en una unidad ambos vectores para la i-sima componente. a e Tenemos, bajo estas hiptesis, la siguiente ecuacin: o o P (Y j|x1 )/P (Y > j|x1 ) = P (Y j|x2 )/P (Y > j|x2 )
d i=1

i (x1i x2i ) = ei (x1i x2i ) = ei .

(7.23)

Mantenidas todas las dems variables constantes tenemos que el cambio de los odds a de la funcin de distribucin de la variable Y condicionada a x1 y a x2 se modica o o de un modo constante e igual a ei . La funcin de verosimilitud de estos modelos viene dada por la siguiente ecuao cin. Notemos que para el individuo i tenemos asociado el vector (yi1 , . . . , yiJ ) o donde yij ser uno si el individuo est en la categor j, es decir, si la variable Y a a a toma el valor j.
n J n J

j (xi )yij =
i=1 j=1 n J i=1 j=1

(P (Y j|xi ) P (Y j 1|xi ))yij = exp(j1 + 1 + j1 +


d i=1 i (x1i xi2 )) d i=1 i (x1i xi2 ) yij

exp(j + 1 + j +

i=1 j=1

d i=1 i (x1i xi2 )) d i=1 i (x1i xi2 )

(7.24)

7.5.

Sobre la interpretacin de los coecientes o

De alguna manera la variable ordinal Y que analizamos puede considerarse como la versin discreta de una variable continua en la que discretizamos su rano go. Denotamos esa variable por Y y suponemos que tiene funcin de distribuo cin G(y ) donde los valores y var alrededor de la media que depeno an d de de x a travs de (x) = e i=1 i (x1i xi2 ). Tomemos los puntos de corte = 0 < 1 < . . . < J = + de modo que Y = j si j1 < Y j . En denitiva estamos asumiendo que cuando la variable continua Y est entre los a valores j1 y j entonces la variable Y vale j. Tendremos que
d

P (Y j|x) = P (Y j |x) = G(j o que


d

i xi ),
i=1

(P (Y j|x)) = j
d

i xi .
i=1

Si por ejemplo suponemos que Y = i=1 i xi + donde tiene una distribucin o log stica entonces G1 ser la funcin link log a o stica y tendr amos el modelo de odds proporcionales. Notemos que con esta formulacin los mismos parmetros ocurren o a independientemente de los puntos de corte j que utilicemos. En denitiva que los parmetros que cuantican el efecto de las variables no dependen de la eleccin que a o hacemos de las categor de la variable a explicar Y . Esto nos permite comparar as los estimadores cuando se utilizan distintas escalas de respuesta. Si es positivo entonces cuando la variable asociada x crece entonces el logit acumulado decrece y tambin lo hace las probabilidades acumuladas. Tenemos que e los valores peque os de Y tienen menos probabilidad. La variable Y tiende a tomar n valores mayores cuando x crece.

7.6.

Verosimilitud de un modelo lineal generalizado

Tenemos el vector Y = (Y1 , . . . , Yn ) que suponemos que son observaciones independientes. La densidad de Yi se supone que es de la forma: f (yi | i , ) = exp yi i b(i ) + c(yi , ) a() (7.25)

Esta familia de densidades recibe el nombre de familia de dispersin exponencial. o El parmetro recibe el nombre de parmetro de dispersin. El parmetro i es el a a o a parmetro natural. a Notemos que cuando es conocido la familia de dispersin exponencial se reduce o a la familia exponencial natural cuya expresin genrica viene dada por o e f (yi | i ) = a(i )b(yi ) exp(yi Q(i )) (7.26)

10

Cap tulo 8

Componentes principales
Cuando tomamos medidas sobre personas, objetos, empresas, unidades experimentales de un modo genrico, se tiende a recoger el mximo de variables posible. e a En consecuencia tenemos dimensiones del vector de caracter sticas X grandes. Una opcin consiste en sustituir la observacin original, de dimensin d, por k o o o combinaciones lineales de las mismas. Obviamente pretendemos que k sea mucho menor que d. El objetivo es elegir k de modo que expresen una proporcin razoo nable de la dispersin o variacin total cuanticada como la traza de la matriz de o o covarianza muestral, tr(S), Nota de R 52 (Fichero notaR143) Veamos grcamente el signicado de las a componentes principales si suponemos que tenemos dos variables. Generamos (con [7]) una muestra de tama o 100 con una distribucin normal bivariante con vector n o de medias = (2, 2) y matriz de covarianzas = 1 6 6 16

En la gura ?? podemos ver los datos generados. library(mvtnorm)

sigma0= matrix(c(1,6,6,16),ncol=2, byrow=T) x = rmvnorm(n=100, mean=c(1,1),sigma=sigma0) plot(x) x.pc = princomp(x) x.pc$loadings x.pc$loadings[,1] plot(x) abline(h=0) abline(v=0) abline(a=0,b=x.pc$loadings[2,1]/x.pc$loadings[1,1],lty=2) #fig143a

summary(x.pc)

x[,2] 5 4 0

10

0 x[,1]

Figura 8.1:

Sea X un vector aleatorio de dimensin d con vector de medias y matriz o de covarianzas . Sea T = (t1 , t2 , . . . , td ) (los ti indican la i-sima columna de la e matriz) la matriz ortogonal tal que T T = = diag(1 , . . . , d ), donde 1 2 . . . d 0 son los valores propios de la matriz . Sea Y = T (X ). (8.2) (8.1)

Si denotamos la j-sima componente de Y como Yj entonces Yj = t (X ) con e j j = 1, . . . , d. A la variable Yj la llamamos la j-sima componente principal de e e Y . La variable Zj = j Yj es la j-sima componente principal estandarizada de Y . Estas componentes tienen algunas propiedades de gran inters. e Notemos que el vector tj tiene longitud unitaria y, por lo tanto, Yj no es ms a que la proyeccin ortogonal de X en la direccin tj . o o Proposicin 1 o 1. Las variables Yj son incorreladas y var(Yj ) = j . 2. Las variables Zj son incorreladas y con varianza unitaria. Demostracion. En cuanto al apartado primero tenemos que var(Y ) = var(T (X ) = T var(Y )T = T T = . El segundo apartado es directo a partir del primero.

Se verica el siguiente resultado. Teorema 3 Las componentes principales Yj = t (X ) con j = 1, . . . , d tienen j las siguientes propiedades: 1. Para cualquier vector a1 de longitud unitaria, var(a X) alcanza su valor ma 1 ximo 1 cuando a1 = t1 . 2. Para cualquier vector aj de longitud unitaria tal que a ti = 0 para i = j 1, . . . , j 1, se tiene que var(a X toma su valor mximo j cuando aj = tj . a j 3.
d j=1

var(Yj ) =

d j=1

var(Xj ) = traza().

La versin muestral de las componentes principales la obtenemos sustituyendo en o lo anterior y por X y respectivamente. Es importante considerar el estimador de que estamos utilizando (o bien el estimador insesgado donde dividimos por n 1 o bien el estimador en donde dividimos por n). Si denotamos por 1 . . . d los valores propios ordenados de y la matriz T = (t1 , . . . , td ) es la matriz tal que cada columna es el correspondiente vector propio entonces tenemos las componentes principales muestrales dadas por yj = T (xi x). La nueva matriz de datos viene dada por Y = (y1 , . . . , yn ) = T (x1 x, . . . , xn x) (8.3)

Finalmente, si las variables vienen dadas en unidades muy distintas puede ser conveniente sustituir la matriz de covarianzas (poblacional o muestral) por la correspondiente matriz de correlaciones. De hecho, una de los inconvenientes de las componentes principales como un modo de reducir la dimensin de los datos es precio samente que obtenemos resultados distintos si utilizamos las componentes principales obtenidas a partir de la matriz de covarianzas o bien las componentes principales obtenidas a partir de la matriz de correlaciones. A partir de las d variables originales podemos obtener hasta d componentes principales. Sin embargo, hemos dicho que pretendemos reducir la dimensin del vector o de datos. La pregunta a responder es: con cuntas componentes nos quedamos? a Supongamos que estamos trabajando con la matriz de covarianzas . Hemos d d d de recordar que var(yj ) = j y que j=1 var(xj ) = j=1 var(yj ) = j=1 j . En consecuencia se suelen considerar los siguientes cocientes
k j=1 d j=1

j j

, con k = 1, . . . , d,

de modo que, cuando para un cierto valor de k, estamos prximos a la unidad nos o quedamos con ese valor de k. En la versin muestral trabajaremos o bien con los o valores propios de la matriz de covarianzas muestral o la matriz de correlaciones muestrales. Nota de R 53 Vamos a realizar unas componentes principales a partir de las cuatro variables de los datos iris. En principio realizamos utilizamos la matriz de covarianzas muestral. Notemos que la funcin princomp utiliza la matriz dividida por el tama o muestral menos o n uno (n 1). En gura 8.2 aparecen los cocientes entre la suma de los valores propios y la suma de todos ellos. En la gura 8.3 tenemos las dos primeras componentes sobre todos los datos indicando la especie a la que pertenece el individuo. Las guras 8.4 y 8.5 son las anlogas a las guras 8.2 y 8.3 considerando la a matriz de correlaciones muestral. 3

library(MASS) data(iris) iris ir = iris[,1:4] ir.species = c(rep("s",50),rep("c",50),rep("v",50)) ir.pca = princomp(log(ir),cor=F) ir.pca > ir.pca Call: princomp(x = log(ir), cor = F) Standard deviations: Comp.1 Comp.2 Comp.3 Comp.4 1.14273113 0.13789069 0.13480585 0.05362974 4 variables and 150 observations.

summary(ir.pca) > summary(ir.pca) Importance of components: Comp.1 Comp.2 Comp.3 Comp.4 Standard deviation 1.1427311 0.13789069 0.13480585 0.053629741 Proportion of Variance 0.9702335 0.01412726 0.01350223 0.002136976 Cumulative Proportion 0.9702335 0.98436079 0.99786302 1.000000000 if(dib) postscript(file=fig301a.ps,horizontal=F) plot(ir.pca) #Figura a if(dib) dev.off() loadings(ir.pca) ir.pc = predict(ir.pca) ir.pc[1:6,] > ir.pc[1:6,] Comp.1 Comp.2 1 -1.6736850 0.02055683 2 -1.6688436 -0.06797029 3 -1.7142099 0.02006252 4 -1.6422467 -0.09648282 5 -1.6773055 0.03675822 6 -0.9833353 0.25757951

Comp.3 -0.06042345 0.06921821 0.07515646 0.04725452 -0.07085250 -0.06701669

Comp.4 0.015217731 0.041588345 0.002209602 -0.046865053 -0.013090995 -0.002697639

if(dib) postscript(file=fig301b.ps,horizontal=F) #Figura b eqscplot(ir.pc[,1:2],type="n",xlab="Primera componente principal", ylab="Segunda componente principal") text(ir.pc[,1:2],ir.species) if(dib) dev.off()

#Con la matriz de correlaciones muestral 4

ir.pca = princomp(log(ir),cor=T) summary(ir.pca) if(dib) postscript(file=fig301c.ps,horizontal=F) plot(ir.pca) #Figura c if(dib) dev.off() ir.pc = predict(ir.pca) if(dib) postscript(file=fig301d.ps,horizontal=F) eqscplot(ir.pc[,1:2],type="n",xlab="Primera componente principal", ylab="Segunda componente principal") text(ir.pc[,1:2],ir.species) if(dib) dev.off()

ir.pca

Variances

0.0

0.2

0.4

0.6

0.8

1.0

1.2

Comp.1

Comp.2

Comp.3

Comp.4

Figura 8.2:

Nota de R 54 (Fichero notaR143) Veamos grcamente el signicado de las a componentes principales si suponemos que tenemos dos variables. Generamos (con [7]) una muestra de tama o 100 con una distribucin normal bivariante con vector n o de medias = (2, 2) y matriz de covarianzas = 1 6 6 16

En la gura ?? podemos ver los datos generados. 5

Segunda componente principal

s 0

ss ss

s s ss sss ss sss ss sss ss

s ss s s s

ss s ss s

s s s v v v vv v c v c cc c c v vvvvv vv v c v cc ccc v vv vv v v c cc c c v cccccccccv cv vv vv v cc c c c cccc c c c v vv v v c cc c c c cv vv v v cc v

2.0

1.5

1.0

0.5

0.0

0.5

1.0

Primera componente principal

Figura 8.3:

library(mvtnorm)

sigma0= matrix(c(1,6,6,16),ncol=2, byrow=T) x = rmvnorm(n=100, mean=c(1,1),sigma=sigma0) plot(x) x.pc = princomp(x) x.pc$loadings x.pc$loadings[,1] plot(x) abline(h=0) abline(v=0) abline(a=0,b=x.pc$loadings[2,1]/x.pc$loadings[1,1],lty=2) #fig143a summary(x.pc)

ir.pca

Variances

0.0

0.5

1.0

1.5

2.0

2.5

Comp.1

Comp.2

Comp.3

Comp.4

Figura 8.4:

c s c c c Segunda componente principal s s s s s s s s s s s ss s s s ss s s s ss s s ss s s s s s s s s s ss s s s s s 2 s v s v v ss v cc c 2 c c v c

s s

cc v cc c c c v c cc v v v cc v c c c cc v v v c v v c c cc v v c c c cv v c c vv c c v v c c v c vv v v v c c cvv v v v c v c c v v v v c v v vv v v

Primera componente principal

Figura 8.5:

x[,2] 5 4 0

10

0 x[,1]

Figura 8.6:

Cap tulo 9

De cmo usar R en un o tiempo razonable (no fcil, a no)


En este cap tulo se incluyen algunos consejos prcticos para trabajar con R. Las a posibilidades son enormes. Sin embargo, de tantas que tiene lo ms probable es que el a usuario ocasional no llegue a conocer ninguna de ellas. Antes lo habr abandonado. a Y con razn. Si llevas a os utilizndolo con unas pocas l o n a neas de cdigo haces lo o que con programas basados en men te cuesta horas. Pero lo de a os usando algo u n es una utop que slo se pueden permitir unos cuantos profesores universitarios sin a o nada mejor que hacer y muchos horas que llenar de su importante tiempo. Cuando usamos un programa informtico hay dos problemas fundamentales que, a dependiendo de la persona, uno puede ser mucho mayor que el otro. Un problema es el manejo del dichoso programa. Cmo se ha dise ado el interface? Dnde han o n o puesto tal o cual opcin de la tcnica? En n, no vale la pena seguir. Se asume o e que un buen men es la clave de un buen programa (sobre todo, para un usuario u inexperto). En denitiva, se trata de eliminar cualquier tipo de aprendizaje (inicial o posterior) para que sea de uso inmediato. Algunas personas piensan que eso no est a tan claro. Se acaba pagando el pato. Lo que no pierdes (no me atreve a hablar de ganar) al principio lo pierdes ms tarde. Programas como R basados en el uso de un a lenguaje sencillo permiten un aprendizaje rpido y profundo. Aprendes Estad a stica al mismo tiempo que aprendes a manejar el programa. Y, desde un punto de vista docente, es su mayor inters para ser utilizado. e En este cap tulo he ido incluyendo distintas cuestiones bsicas para el uso del a programa. Desde el cmo conseguirlo o instalarlo hasta cmo trabajar con l. Mucho o o e de lo que sigue se basa en mi propia experiencia. De hecho, muchos estudiantes a los que sugieres formas de trabajo, utilizan otros trucos que les resultan ms utiles. a Mi edad y cerrazn mental me impiden cada vez ms adaptarme a nuevas ideas. Lo o a procuro pero . . . Es importante darse cuenta de que es un programa abierto y que, fcilmente, lo puedes integrar con otras herramientas informticas. La idea es: elige a a el editor que quieras. Genera las guras en formatos distintos y utiliza el procesador de textos que se quiera. En n, de esto vamos a tratar.

9.1.

Instalacin y cmo trabajar con R o o

La direccin bsica es http://cran.r-project.org. All se tienen tanto las o a fuentes como versiones compiladas para Windows, Mac y Linux. 9

9.1.1.

R y Windows

Los puntos a seguir para una instalacin son los siguientes: o 1. Traer la distribucin base de http://cran.r-project.org/bin/windows/ o base/. 2. El programa se instala simplemente ejecutndolo. a 3. Una vez instalado en el men principal teneis una herramienta que permite u seleccionar el espejo desde traer los paquetes adicionales cmodamente. o Una vez instalado el programa la opcin ms cmoda es utilizar el programa el o a o programa Tinn-R que se puede conseguir en https://sourceforge.net/projects/tinn-r. Vamos escribiendo el cdigo en su o editor y tiene muchas herramientas para interactuar con R. Es, sin duda, la mejor opcin para Windows. o Una segunda opcin es utilizar RWinEdt. Para poder usarlo hay que tener inso talado el programa Winedt (http://www.winedt.com). Es un programa shareware A muy util para escribir en L TEX. Hay que tener instalado WinEdt y cargar el paquete RWinEdt del siguiente modo > library(RWinEdt)

9.1.2.

R y Linux

Instalacin 1. Para Linux hay distintas versiones compiladas. En http://cran. o r-project.org/bin/linux/ se encuentran estas distribuciones. 2. No es complicado compilar R a partir de las fuentes. Hay que tener la precaucin de tener gfortran. o 3. Cuando instalamos R en Linux hemos de instalar previamente la librer a BLAS. La podeis encontrar para openSUSE 10.3 en http://download.opensuse.org/distribution/10.3/repo/oss/suse/ i586/blas-3.1.1-29.i586.rpm. Edicin con Emacs y ESS En Linux sin duda la mejor opcin de trabajo es utio o lizar Emacs http://www.gnu.org/software/emacs/ con el paquete Emacs Speaks Statistics (ESS) 1 . http://ess.r-project.org/ Cmo trabajao mos con Emacs y ESS? 1. Abrimos el chero R con emacs. 2. Abrimos una nueva ventana (mejor separada) con C x 5 2. 3. En la nueva ventana marcamos el icono de R. 4. Utilizamos la ventana donde est el cdigo para editar y podemos usar los a o distintos controles que nos d el men ESS de emacs podemos trabajar a u muy cmodamente. o

9.2.

Cmo jar el directorio de trabajo? o

Empezamos una sesin de R y todo nuestro trabajo (datos, cdigo R) lo tenemos o o en un directorio. Hemos de tener un acceso cmodo a estos cheros. Cmo hacerlo? o o
1 La mejor opcin es acudir a la pgina de los paquetes binarios y buscar en la distribucin o a o correspondiente donde teneis el paquete

10

En Linux no hay problema. Simplemente con la cnsola nos vamos al directorio o correspondiente y ejecutamos R. Automticamente hemos jado el directorio de a trabajo como aqul en que iniciamos el programa. e En Windows lo recomendable es utilizar el men y cambiar el directorio al de u trabajo. Yo recomiendo una vez hecho esto ejecutar: getwd() Nos devuelve todo el camino hasta dicho directorio. Lo que nos devuelve esta funcin o (por ejemplo C: Mis documentos ad prog) lo ponemos entre comillas dobles y ejecutamos setwd("C:\ Mis documentos\ ad\ prog") De este modo hemos jado el directorio de trabajo.

9.3.

Etiquetas de valor y de variable

Para denotar una variable utilizamos siempre una expresin breve y simple. Sin o embargo, es conveniente que la variable tenga una etiqueta explicativa del signicado de la variable. Dicha etiqueta ha de ser clara y no muy larga.

9.3.1.

Cmo etiquetar una variable? o

Supongamos que la variable a etiquetar es x en el data frame datos. Usamos la librer [9]. a library(Hmisc} label(datos$x) = "Ejemplo de etiqueta"

9.4.

Elaboracin de un informe a partir del cdigo o o R

Una vez hemos analizado un banco de datos hemos de elaborar un informe. Normalmente nos va a llevar ms tiempo esta segunda parte que la primera. a

9.4.1.

Sweave

Un documento de gran utilidad dnde ver la utilizacin de Sweave es http: o o //cran.r-project.org/doc/contrib/Rivera-Tutorial_Sweave.pdf.

9.5.

R y Octave/Matlab

Es frecuente que un usuario de Octave/Matlab utilice R. En http://cran. r-project.org/doc/contrib/R-and-octave.txt y http://mathesaurus.sourceforge. net/octave-r.html teneis tablas de equivalencia entre los comandos en ambos programas.

11

12

Cap tulo 10

Datos
En este cap tulo damos una breve explicacin de los datos que utilizamos en el o texto. Si los datos han sido obtenidos de alg n paquete de R lo mejor es consultar u la ayuda del paquete correspondiente. Aqu nos centramos en los datos propios.

10.1.

scoremaster

Los datos scoremaster son unos datos relativos a cirug mayor ambulatoria en a el hospital Dr. Peset de Valencia. Han sido proporcionados por el Dr. Juan Vi oles n [? ]. Este chero fue creado con la funcin save de R y se tiene que leer (como parece o esperable) con la funcin load de R. El chero contiene datos relativos a una serie de o intervenciones quir rgicas realizadas con cirug sin ingreso. En estas intervenciones u a el enfermo acude al centro hospitalario por la ma ana y se va el mismo d de la n a intervencin (si no hay complicaciones obviamente). Las variables del banco de datos o son las siguientes: score Una puntuacin del estado general del enfermo en la primera llamada. o eg1 Estado general en primera llamada: Excelente, eufrico, sue o normal (2); buen o n estado pero algo preocupado, ha dormido poco (1); regular, ansiedad moderada, algo mareado, ha dormido mal o nada (0). d1 Nivel de dolor en primera llamada: Ausencia (2); dolor leve (1); dolor importante pero soportable (0). t1 Tolerancia en primera llamada: completa (2); a l quidos (1); nuseas y vmitos a o o incumple dieta (0). s1 Sangrado en primera llamada: Ausencia (2); normal tipo menstruacin, bigotera, o etc (1); dudoso, para observacin (0). o especialidad Es la especialidad a la que corresponde la intervencin. o intensidad Es una variable ordinal que cuantica la intensidad (de menos a ms) a de la intervencin realizada. o tipoanes Tipo de anestesia. asa Clasicacin ASA. o sexo Sexo de la persona. 13

T.TOTALP Tiempo total postquir rgico. u T.QUIRUR Tiempo total quir rgico. u edad Edad del paciente. Las variables score2, eg2, d2, t2, s2 son las mismas variables (con las mismas categor observadas en la segunda llamada. De un modo similar tenemos las variables as) para la tercera, cuarta y quinta llamadas.

14

Cap tulo 11

Matrices
En este apndice incluimos los resultados bsicos de matrices que necesitamos. e a Puntos a incluir: 1. Matriz semidenida positiva y denida positiva. 2. Valor y vector propio. 3. Inversa de una matriz. 4. Una matriz diagonal con valores 1 , . . . , d en la diagonal principal la denotaremos diag(1 , . . . , d ).

11.1. 11.2.

Determinante de una matriz Determinante


|A| = (1)| | a1 (1) . . . a1 (p) (11.1)

Si A es una matriz cuadrada entonces denimos su determinante como

donde el sumatorio se toma sobre todas las posibles permutaciones de (1, 2, . . . , p) y | | es igual a +1 o 1 dependiendo de si se puede expresar como el producto de un n mero par o impar de transposiciones. u

11.3.

Valores y vectores propios


q() = |A I|. (11.2)

Supongamos A una matriz cuadrada d d y consideremos

La funcin q() es un polinomio de orden p. Las ra o ces de este polinomio reciben el nombre de valores propios de la matriz A. No tienen porqu n meros reales. e u Pueden repetirse los valores de de modo que tengamos ra m ltiples. ces u Supongamos para i = 1, . . . , p que |A i I| = 0. En consecuencia la matriz A i I es singular y tenemos un vector no nulo x tal que Ax = i x. 15 (11.3)

Si un vector x verica la ecuacin 11.3 decimos que es un vector propio de la o matriz A asociado al valor propio i . Si el valor propio es complejo tambin puede e tener componentes complejas el vector propio. Un vector propio x con todas las componentes reales diremos que est estandarizado si tiene mdulo unitario x x = 1. a o Teniendo en cuenta que el coeciente que acompa a a p en el polinomio q() es n (1)p entonces podemos expresar q() en funcin de sus ra del siguiente modo o ces
p

q() =
i=1

(i ).
p

(11.4)

En particular tenemos q(0) =

i .
i=1

(11.5)

Si consideremos en las ecuaciones 11.2 y 11.4 el coeciente que acompa a a tenen mos ai i = trA = i , (11.6) y tenemos que la traza de la matriz A coincide con la suma de los valores propios. Teorema 4 Todos los valores propios de una matriz simtrica A(d d) son reales. e

Teorema 5 (Teorema de la descomposicin espectral o teorema de descomposicin de Jordan) o o Cualquier matriz simtrica A(d d) se puede expresar como e A = =
i (i) (i) ,

(11.7)

donde es una matriz diagonal de valores propios y es una matriz ortogonal cuyas columnas son los vectores propios estandarizados.

16

Bibliograf a
[1] A. Agresti. Cualitative Data Analysis. Wiley, 2nd edition edition, 2002. [2] R core members, Saikat DebRoy, Roger Bivand, and others: see COPYRIGHTS le in the sources. foreign: Read Data Stored by Minitab, S, SAS, SPSS, Stata, Systat, dBase, ..., 2006. R package version 0.8-18. [3] C.L. Blake D.J.Newman, S. Hettich and C.J. Merz. UCI repository of machine learning databases, 1998. [4] E.R. Dougherty. Probability and Statistics for the Engineering, Computing and Physical Sciences. Prentice Hall International Editions, 1990. [5] Julian Faraway. faraway: Functions and datasets for books by Julian Faraway., 2006. R package version 1.0.0. [6] R.A. Fisher. The analysis of covariance method for the relation between a part and the whole. Biometrics, 3:6568, 1947. [7] Alan Genz, Frank Bretz, and R port by Torsten Hothorn. mvtnorm: Multivariate Normal and T Distribution, 2006. R package version 0.7-5. [8] J.A. Hartigan and M.A. Wong. A k-means clustering algorithm. Applied Statistics, 28:100108, 1979. [9] Frank E Harrell Jr and with contributions from many other users. Hmisc: Harrell Miscellaneous, 2007. R package version 3.3-2. [10] L. Kaufman and P.J. Rousseeuw. Finding Groups in Data. An Introduction to Cluster Analysis. Wiley, 1990. [11] Uwe Ligges. R-winedt. In Kurt Hornik, editor, Proceedings of the 3rd International Workshop on Distributed Statistical Computing (DSC 2003), TU Wien, Vienna, Austria, 2003. ISSN 1609-395X. [12] Martin Maechler, Peter Rousseeuw, Anja Struyf, and Mia Hubert. Cluster analysis basics and extensions. Rousseeuw et al provided the S original which has been ported to R by Kurt Hornik and has since been enhanced by Martin Maechler: speed improvements, silhouette() functionality, bug xes, etc. See the Changelog le (in the package source), 2005. [13] J. Pitman. Probability. Springer-Verlag, 1999. [14] R Development Core Team. R: A Language and Environment for Statistical Computing. R Foundation for Statistical Computing, Vienna, Austria, 2006. ISBN 3-900051-07-0. [15] W.N. Venables and B. D. Ripley. Modern Applied Statistics with S. Springer, New York, fourth edition, 2002. ISBN 0-387-95457-0. [16] J. Verzani. Using R for Introductory Statistics. Chapman & Hall / CRC, 2005. 17

Você também pode gostar