Al f
on
so
Ga
rc
aP
ere
z.
UN
E
TECNICAS
ACTUALES
ESTADISTICA
DE
APLICADA
Alfonso Garca P
erez
D
Al f
on
so
Ga
rc
aP
ere
z.
UN
E
c
Copyright
2011
Alfonso Garca Perez
No est
a permitida la reproducci
on total o parcial de este
libro, ni su tratamiento inform
atico, ni la transmisi
on de
ninguna forma o por cualquier medio, ya sea electr
onico,
mec
anico, por fotocopia, por registro u otros medios, sin el
permiso previo y por escrito de los titulares del Copyright.
El contenido de este libro est
a registrado por el autor en el
Registro de la Propiedad Intelectual con el n
umero M-007363/2011
y protegido por la Ley, que establece penas de prisi
on adem
as
de las correspondientes indemnizaciones para quien lo plagiara
D
Al f
on
so
Ga
rc
aP
ere
z.
UN
E
Pr
ologo
ii
Al f
on
so
Ga
rc
aP
ere
z.
UN
E
D
Al f
on
so
Ga
rc
aP
ere
z.
UN
E
Indice
1. T
ecnicas Actuales en Regresi
on Lineal
1.1.
1.2.
1.3.
1.4.
1.5.
Introducci
on . . . . . . . . . . . . .
*El Modelo de Regresi
on Lineal . .
Diagn
ostico de la Regresi
on Lineal
Puntos influyentes . . . . . . . . .
Regresi
on Robusta . . . . . . . . .
1.5.1. S-estimadores . . . . . . . .
1.5.2. MM-estimadores . . . . . .
1.6. Enmascaramiento . . . . . . . . . .
1.7. Referencias . . . . . . . . . . . . .
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
2.1. Introducci
on . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
2.2. Definici
on de Modelo Lineal Generalizado univariante . . . . .
2.2.1. Dispersi
on excesiva (Overdispersion) . . . . . . . . . . .
2.3. Estimaci
on y Contrastes basados en la verosimilitud . . . . . .
2.3.1. Estimador de m
axima verosimilitud de los par
ametros i
2.3.2. Estimador del par
ametro de escala . . . . . . . . . . .
2.3.3. Contrastes de hip
otesis sobre los par
ametros . . . . . .
2.3.4. Contraste de bondad de ajuste del modelo . . . . . . . .
2.4. C
alculo con Rmo . . . . . . . . . . . . . . . . . . . . . . . . . .
2.5. Metodos basados en la cuasi-verosimilitud . . . . . . . . . . . .
2.6. Metodos Bayesianos . . . . . . . . . . . . . . . . . . . . . . . .
2.7. Metodos robustos . . . . . . . . . . . . . . . . . . . . . . . . . .
2.7.1. M -estimadores basados en la cuasi-verosimilitud . . . .
2.7.2. Contraste robusto de bondad de ajuste del modelo . . .
2.7.3. C
alculo con Rmo . . . . . . . . . . . . . . . . . . . . . .
2.8. Referencias . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
iii
1
1
3
9
14
20
22
24
26
27
27
28
33
33
34
36
37
38
39
48
48
49
50
52
53
59
D
Al f
on
so
Ga
rc
aP
ere
z.
UN
E
3. T
ecnicas Actuales en el An
alisis de Series Temporales
3.1. Introducci
on . . . . . . . . . . . . . . . . .
3.1.1. C
alculo con R . . . . . . . . . . . .
3.2. Filtrado lineal . . . . . . . . . . . . . . . .
3.3. Modelos ARIMA . . . . . . . . . . . . . .
3.3.1. Identificaci
on del Modelo ARIMA
3.3.2. Estimaci
on de los par
ametros . . .
3.3.3. Diagnosis . . . . . . . . . . . . . .
3.3.4. Predicci
on . . . . . . . . . . . . . .
3.3.5. Test de serie estacionaria . . . . .
3.3.6. Ejemplos . . . . . . . . . . . . . .
3.4. Cointegraci
on . . . . . . . . . . . . . . . .
3.5. Modelos ARCH y GARCH . . . . . . . .
3.6. Ejemplos de series climatol
ogicas . . . . .
3.7. Referencias . . . . . . . . . . . . . . . . .
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
61
.
.
.
.
.
.
.
.
.
.
.
.
.
.
. 61
. 62
. 63
. 68
. 69
. 74
. 76
. 79
. 81
. 82
. 91
. 94
. 100
. 110
113
. . . . . . . . . .
. . . . . . . . . .
. . . . . . . . . .
. . . . . . . . . .
. . . . . . . . . .
. . . . . . . . . .
An
alisis Cluster
. . . . . . . . . .
. . . . . . . . . .
. . . . . . . . . .
5. T
ecnicas Estadsticas para Datos Espaciales
5.1. Introducci
on . . . . . . . . . . . . . . . . . . . .
5.2. Datos espaciales y su representaci
on . . . . . .
5.3. Procesos Puntuales Espaciales . . . . . . . . . .
5.3.1. An
alisis de la distribuci
on espacial . . .
Aleatoriedad Espacial Completa (CSR)
Ajuste de Modelos Espaciales Puntuales
5.3.2. An
alisis de la densidad espacial . . . . .
5.4. Referencias . . . . . . . . . . . . . . . . . . . .
iv
113
114
114
120
122
123
127
127
128
129
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
129
130
134
135
139
143
148
149
D
Al f
on
so
Ga
rc
aP
ere
z.
UN
E
Captulo 1
T
ecnicas Actuales en
Regresi
on Lineal
1.1.
Introducci
on
La Regresi
on Lineal por mnimos cuadrados es, sin duda, una de las tecnicas
estadsticas m
as utilizadas desde que Legendre (1805) y Gauss (1809) publicaran sus primeras formalizaciones. Y hemos querido comenzar un texto sobre
Tecnicas Actuales de Estadstica Aplicada con este metodo precisamente porque, la mayora de las veces, se sigue utilizando sin analizar debidamente las
suposiciones que requiere o, lo que es m
as interesante, sin las modificaciones
que se han producido en los u
ltimos a
nos y que lo mejoran considerablemente.
Una simple mirada a la Figura 1.4 que aparece m
as adelante, pone en evidencia lo inadecuado que puede resultar, en algunas ocasiones, utilizar la recta de
regresi
on de mnimos cuadrados para hacer predicciones.
Ya en el Captulo 14 de CB y en la Secci
on 6.1.1 de EAR estudiamos algunas
tecnicas estadsticas dise
nadas para analizar la normalidad o la simetra de los
datos observados. Aqu las revisaremos en profundidad con el prop
osito de
Diagnosticar las suposiciones necesarias para que un An
alisis de Regresi
on
Lineal sea v
alido, tecnicas que se denominan Regression Diagnostics. Pero
adem
as, la propia Regresi
on Lineal tambien es u
til para detectar posibles
datos an
omalos entre las observaciones (y analizar su significado), an
alisis
denominado Diagnostic Regression.
1.2.
En esta secci
on exponemos una formalizaci
on precisa del Modelo de Regresi
on Lineal. Recordemos que el Modelo de Regresi
on Lineal supone una
variable dependiente Y relacionada linealmente con unas covariables inde1
Al f
on
so
Ga
rc
aP
ere
z.
UN
E
Y = 0 + 1 X1 + 2 X2 + ... + +k Xk + e
[1.1]
e1
..
.
yi
..
.
xi1
xik
ei
..
.
yn
en
...
1 x11 x1k
..
x = (x1 , ..., xn )t = ...
.
1 xn1 xnk
siendo
i = 1, ..., n
D
3
Al f
on
so
Ga
rc
aP
ere
z.
UN
E
i = 1, ..., n.
ei |xi ; N (0, )
i = 1, ..., n.
son aquellos valores que hacen mnimos (la suma al cuadrado de) los residuos
ri , entendidos estos como las diferencias entre los valores yi observados y los
obtenidos con el hiperplano ajustado
es decir,
ck xik
yti = b0 + b1 xi1 + ... +
ri = yi yti
b = xt x 1 xt y.
b = x xt x 1 xt y = H
by
yt = (yt1 , ..., ytn )t = x
b = x xt x 1 xt se denomina matriz sombrero, la cual
en donde la matriz H
ser
a de importancia en la Secci
on 1.4.
1.3.
Diagn
ostico de la Regresi
on Lineal
En esta secci
on trataremos el an
alisis de las condiciones necesarias para
que la Regresi
on Lineal de mnimos cuadrados sea v
alida, lo que se denomina
Diagn
ostico de la regresi
on (Regression Diagnostics).
Estas
son: la linealidad entre la variable dependiente y las covariables inon
dependientes, y el que los errores ei sean independientes y con distribuci
Al f
on
so
Ga
rc
aP
ere
z.
UN
E
ei ; N (0, ), suposici
on esta u
ltima analizada mediante un an
alisis de los
residuos.
La linealidad entre la variable dependiente Y y las k covariables Xi suele analizarse gr
aficamente mediante k diagramas de dispersi
on (y, xi ). Si los
puntos aparecen alineados suele admitirse esa linealidad.
Para analizar si los errores ei siguen una N (0, ) se considera que los residuos ri son buenos estimadores suyos y se analiza si puede admitirse que los
residuos ri proceden de una N (0, ). Para ello, lo primero es calcular la media
muestral de los residuos que debera
Pnde 2ser cero. Despues, dado que la cuasivarianza muestral de los residuos,
1 ri /(n k 1) = SSN EX/(n k 1)
es un buen estimador de la varianza com
un 2 (vease CB-secci
on 10.3.1), lo
que se considera habitualmente son los residuos estandarizados
Residuos ri
.
b = 2 (I x xt x 1 xt )
V (r|x) = V (y|x) V (yt |x) = 2 (I H)
1 hii
D
5
Al f
on
so
Ga
rc
aP
ere
z.
UN
E
No obstante, si el n
umero n de residuos es relativamente grande en relaci
on
con el n
umero k de covariables, esta dependencia en los residuos se suele
ignorar en el an
alisis y suelen considerarse s
olo los residuos estandarizados.
El an
alisis de la normalidad de los residuos estandarizados, o el que los
residuos estudentizados sigan una tnk1 , debera hacerse mediante alg
un test
de bondad del ajuste aunque lo m
as frecuente es utilizar metodos gr
aficos
como el histograma, el diagrama de hojas y ramas, o el qq-plot.
Por u
ltimo, el an
alisis de la homocedasticidad, es decir, que la varianza de
los residuos es constante, se puede visualizar representando los valores de los
ri para cada i, o como suele hacerse habitualmente para yi o cada yti . Es decir,
on que debera de ser
representando los pares de puntos (yti , ri ), representaci
m
as o menos constante alrededor de cero, al ir variando el i.
Ejemplo 1.1 (PREB-problema 7.2)
Se cree que la duraci
on del revestimiento de un estanque depende de la cantidad de cal
hidr
aulica que contiene. Para analizar esta relaci
on se midi
o, en siete revestimientos, el tiempo, Y , hasta la aparici
on de filtraciones, teniendo cada uno de los revestimientos diferentes
porcentajes de cal hidr
aulica, X. Los resultados obtenidos fueron los siguientes:
X
Y
4
12
10
26
80
180
45
132
25
100
60
200
90
230
Se pide:
a) Determinar la recta de mnimos cuadrados.
b) Contrastar, a nivel = 0 1, la hip
otesis nula H0 de que las variables X e Y no est
an
relacionadas linealmente, frente a la alternativa de que s est
an relacionadas linealmente.
c) Analizar las suposiciones de la Regresi
on Lineal.
Call:
lm(formula = y ~ x)
Coefficients:
(Intercept)
17.398
x
2.415
> summary(ajus)
Call:
lm(formula = y ~ x)
50
100
150
200
Al f
on
so
Ga
rc
aP
ere
z.
UN
E
20
40
60
80
Residuals:
1
2
3
-15.057 -15.545 -30.574
4
5.941
5
22.235
6
37.720
7
-4.721
Coefficients:
Estimate Std. Error t value Pr(>|t|)
(Intercept) 17.3979
17.2332
1.01 0.359038
x
2.4147
0.3156
7.65 0.000608 ***
(1)
--Signif. codes: 0 *** 0.001 ** 0.01 * 0.05
0.1
(2)
Residual standard error: 25.99 on 5 degrees of freedom
Multiple R-Squared: 0.9213,
Adjusted R-squared: 0.9055
F-statistic: 58.52 on 1 and 5 degrees of freedom,
p-value: 0.0006075
(3)
D
7
Al f
on
so
Ga
rc
aP
ere
z.
UN
E
0.0
0.5
1.0
1.5
2.0
2.5
3.0
Histogram of resid(ajus)
Frequency
10
0
10
30
20
Sample Quantiles
20
30
40
Normal QQ Plot
1.0
0.0
0.5
1.0
40
20
Theoretical Quantiles
20
40
resid(ajus)
Figura 1.2 : Gr
afico de normalidad e Histograma
Response: y
Df Sum Sq Mean Sq F value
Pr(>F)
x
1 39538
39538 58.524 0.0006075 ***
Residuals 5
3378
676
--Signif. codes: 0 *** 0.001 ** 0.01 * 0.05 . 0.1 1
(4)
Para analizar la normalidad de los residuos de la recta ajustada, primero los obtenemos
con la funci
on resid y, despues, un simple gr
afico de normalidad nos permitir
a visualizar
la normalidad o no de estos. En este ejemplo, obtenemos el vector de residuos ejecutando
(5). Si ejecutamos (6) vemos que la media muestral de los residuos es pr
acticamente cero;
esto es una buena se
nal. De hecho, el gr
afico de normalidad (qq-plot), obtenido ejecutando
(7) y que aparece a la izquierda de la Figura 1.2, parece indicarnos que s podra admitirse
esta, pero el histograma de la derecha de la misma figura, obtenido ejecutando (8), parece
indicarnos la presencia de alg
un dato extremo a la derecha. El gr
afico de hojas y ramas,
obtenido despues de ejecutar (9), confirma la falta de simetra, y en consecuencia la falta
de normalidad, de los datos.
> resid(ajus)
1
(5)
10
0
30
20
10
resid(ajus)
20
30
40
Al f
on
so
Ga
rc
aP
ere
z.
UN
E
50
100
150
200
fitted(ajus)
Figura 1.3 : Gr
afico de varianza
5.940758
22.234694
> mean(resid(ajus))
[1] 3.807718e-16
>
>
>
>
par(mfrow=c(1,2))
qqnorm(resid(ajus))
hist(resid(ajus))
stem(resid(ajus))
37.720305
-4.720600
(6)
(7)
(8)
(9)
(10)
1.4.
D
9
Al f
on
so
Ga
rc
aP
ere
z.
UN
E
Puntos influyentes
Precisando un poco m
as, los datos an
omalos que se tengan en el grupo
de observaciones dependientes yi se denominan simplemente outliers, y si son
datos an
omalos en el conjunto de las covariables dependientes xi se denominan
leverage points, los cuales en ocasiones se traducen por puntos de apalancamiento al apalancar (lever) la recta de regresi
on aunque mantendremos en el
texto la denominaci
on inglesa, leverage points.
La detecci
on de unos y otros es el objetivo de la Regresi
on Diagn
ostica
(Diagnostic Regression).
M
as arriba expresamos los valores te
oricos del hiperplano ajustado como
1 t
by
yt = (yt1 , ..., ytn )t = x xt x
xy=H
b = x xt x 1 xt era denominada matriz sombrero. Maen donde la matriz H
b
tem
aticamente, toda matriz obtenida
1 tde la misma manera que H a partir de
t
x, es decir, definida como x x x
x , se denomina matriz de proyecci
on ortogonal sobre, en este caso, x, expresando as, en terminos geometricos, la idea
de que el vector yt es la proyecci
on del vector y en espacio generado por las
columnas de la matriz x.
b una matriz proyecci
Al considerar a H
on, de dimensi
on n n y de rango
k, los elementos P
de la diagonal hii est
an todos entre 0 hii 1, i = 1, ..., n y
b = n hii es igual a k. En el caso extremo de que fuera hii = 1
la traza de H
i=1
seran los hij = 0 para todo j 6= i lo que significara que yti = yi , es decir,
que el hiperplano ajustado pasara por (xi , yi ) independientemente del valor
de las otras observaciones. Aunque hii = 1 es una situaci
on extrema, un valor
alto suyo implicara que el hiperplano de regresi
on pasara cerca de (xi , yi ),
es decir que este fuera un leverage point. Aunque no existe unanimidad sobre
a partir de que valor de hii denominar al correspondiente punto (xi , yi ) un
leverage point, suele considerarse como tal, aquel punto para el que hii > 0 5.
Ejemplo 1.2 (TA-ejemplo 2.2)
La siguiente tabla recoge los pesos del cuerpo X, en kilogramos (promediados el macho y
la hembra), y del cerebro en gramos, Y , de varios animales y homnidos (datos tomados en
parte de Rousseeuw y Leroy, 1987, pag. 57, que a su vez los toma de otras fuentes, adem
as de
datos de homnidos recogidos en varios artculos de paleontologa por el autor de este texto)
Al f
on
so
Ga
rc
aP
ere
z.
UN
E
10
Animal u Homnido
1
Castor monta
nes
2
Vaca
3
Lobo gris
4
Cabra
5
Cerdo guineano
6
Burro
7
Caballo
8
Mono Potar
9
Gato
10 Jirafa
11 Gorila
12 Macaco ind
u
13 Canguro
14 Hamster
15 Rat
on
16 Conejo
17 Oveja
18 Jaguar
19 Chimpace
20 Rata
21 Topo
22 Cerdo
23 Elefante asi
atico
24 Elefante africano
25 Diplodocus
26 Triceratops
27 Braquiosaurio
28 Australopithecus afarensis
29 Australopithecus africanus
30 Paranthropus robustus
31 Paranthropus boisei
32 Homo habilis
33 Homo erectus
34 Homo sapiens
35 P. troglodythes
36 Hombre actual
X
1 35
465
36 33
27 66
1 04
187 1
521
10
3 3
529
207
6 8
35
0 12
0 023
2 5
55 5
100
52 16
0 28
0 122
192
2547
6654
11700
9400
87000
37
35 5
36
41 5
42
61
59 5
47
70
Y
8 1
423
119 5
115
5 5
419
655
115
25 6
680
406
179
56
1
0 4
12 1
175
157
440
1 9
3
180
4603
5712
50
70
154 5
2198 67
2308 14
2781 42
2698 95
3127 13
4420 59
6372 9
2197 55
10410 89
Si queremos hacer un An
alisis de Regresi
on de estos datos, primero los incorporaremos a R
con (1) y calcularemos la recta de mnimos cuadrados ejecutando (2). Mediante la sentencia
(3), observando el p-valor (4), concluimos que el peso del cuerpo no es significativo para
predecir el peso del cerebro ya que se puede aceptar con bastante seguridad la hip
otesis nula
de que es cero el coeficiente de regresi
on correspondiente a la variable independiente, peso
del cuerpo.
No obstante, en este caso de Regresi
on Lineal Simple, podemos representar tanto la nube
puntos como la recta de regresi
on ajustada, ejecutando (5) y (6) y obteniendo la Figura 1.4
en donde se aprecia claramente un leverage point, la observaci
on 36, el braquiosaurio, que
apalanca a la recta de regresi
on haciendola completamente inadecuada. Esta deducci
on ha
sido posible porque estamos ante un ejemplo de Regresi
on Lineal Simple. Si tuvieramos una
Regresi
on Lineal M
ultiple, la representaci
on gr
afica como elemento de an
alisis deja de ser
v
alida y son necesarios Metodos Robustos para poder realizar el an
alisis de las hip
otesis de
la regresi
on que nos protejan de la posible presencia de datos an
omalos en la muestra.
11
36
34
24
2000
4000
6000
8000
10000
Al f
on
so
Ga
rc
aP
ere
z.
UN
E
33 23
32
30
31
29
28
35
107
19
1162
221
12
17
18
3
8
4
13
9
16
5
20
15
21
14
27
26 25
20000
40000
60000
80000
> pesos<-matrix(scan("d:\\datos\\pesos"),ncol=2,byrow=T)
> recta<-lm(pesos[,2]~pesos[,1])
> summary(recta)
(1)
(2)
(3)
Call:
lm(formula = pesos[, 2] ~ pesos[, 1])
Residuals:
Min
1Q Median
-1470.6 -1370.5 -1160.1
3Q
755.6
Max
8940.9
Coefficients:
(4)
> plot(pesos[,1],pesos[,2],xlab="X",ylab="Y",pch=16)
> text(pesos[,1],pesos[,2],pch=16,1:36,adj=1.5,cex=0.8,col=2)
> abline(recta,lty=2,lwd=2,col=4)
(5)
(5)
(6)
12
Al f
on
so
Ga
rc
aP
ere
z.
UN
E
(7)
> round(ejemplo1_2%*%(solve(t(ejemplo1_2)%*%ejemplo1_2))%*%t(ejemplo1_2),3)
(8)
[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,]
[1,]
[2,]
[3,]
[4,]
[5,]
[6,]
[7,]
[8,]
[,7] [,8] [,9] [,10] [,11] [,12] [,13] [,14] [,15] [,16] [,17]
0.00
0
0 0.00 0.00 0.00
0
0
0
0 0.00
0.00
0
0 0.00 0.00 0.00
0
0
0
0 0.00
0.00
0
0 0.00 0.00 0.00
0
0
0
0 0.00
0.00
0
0 0.00 0.00 0.00
0
0
0
0 0.00
0.00
0
0 0.00 0.00 0.00
0
0
0
0 0.00
0.00
0
0 0.00 0.00 0.00
0
0
0
0 0.00
0.00
0
0 0.00 0.00 0.00
0
0
0
0 0.00
0.00
0
0 0.00 0.00 0.00
0
0
0
0 0.00
0.00
0
0 0.00 0.00 0.00
0
0
0
0 0.00
0.00
0
0 0.00 0.00 0.00
0
0
0
0 0.00
0.00
0
0 0.00 0.00 0.00
0
0
0
0 0.00
0.00
0
0 0.00 0.00 0.00
0
0
0
0 0.00
0.00
0
0 0.00 0.00 0.00
0
0
0
0 0.00
0.00
0
0 0.00 0.00 0.00
0
0
0
0 0.00
0.00
0
0 0.00 0.00 0.00
0
0
0
0 0.00
0.00
0
0 0.00 0.00 0.00
0
0
0
0 0.00
0.00
0
0 0.00 0.00 0.00
0
0
0
0 0.00
0.00
0
0 0.00 0.00 0.00
0
0
0
0 0.00
0.00
0
0 0.00 0.00 0.00
0
0
0
0 0.00
0.00
0
0 0.00 0.00 0.00
0
0
0
0 0.00
0.00
0
0 0.00 0.00 0.00
0
0
0
0 0.00
0.00
0
0 0.00 0.00 0.00
0
0
0
0 0.00
0.01
0
0 0.01 0.01 0.00
0
0
0
0 0.00
0.01
0
0 0.01 0.01 0.00
0
0
0
0 0.00
0.00
0
0 0.00 0.00 0.00
0
0
0
0 0.00
0.00
0
0 0.00 0.00 0.00
0
0
0
0 0.00
0.00
0
0 0.00 0.00 0.00
0
0
0
0 0.00
0.01
0
0 0.01 0.00 0.00
0
0
0
0 0.00
0.01
0
0 0.01 0.00 0.00
0
0
0
0 0.00
0.01
0
0 0.01 0.00 0.00
0
0
0
0 0.00
0.01
0
0 0.01 0.00 0.00
0
0
0
0 0.00
0.01
0
0 0.01 0.00 0.00
0
0
0
0 0.00
0.01
0
0 0.01 0.01 0.00
0
0
0
0 0.00
0.02
0
0 0.02 0.01 0.00
0
0
0
0 0.00
0.01
0
0 0.01 0.00 0.00
0
0
0
0 0.00
0.03
0
0 0.03 0.02 0.01
0
0
0
0 0.01
[,23] [,24] [,25] [,26] [,27] [,28] [,29] [,30] [,31] [,32] [,33]
0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00
0.01 0.01 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.01
0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00
0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00
0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00
0.01 0.01 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.01
0.01 0.01 0.00 0.00 0.00 0.01 0.01 0.01 0.01 0.01 0.01
0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00
13
[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,]
[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,]
Al f
on
so
Ga
rc
aP
ere
z.
UN
E
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0.00
0.00
0.00
0.00
0.00
0.00
0.00
0.00
0.00
0.00
0.00
0.00
0.00
0.00
0.00
0.00
0.00
0.00
0.00
0.00
0.00
0.00
0.00
0.00
0.00
0.00
0.00
0.01
0.00
0.01
0.01
0.00
0.00
0.00
0.00
0.00
0.00
0.00
0.01
0.00
0.00
0.00
0.08
0.10
0.00
0.00
0.02
0.04
0.04
0.05
0.05
0.05
0.08
0.11
0.04
0.18
0.00
0.01
0.01
0.00
0.00
0.00
0.00
0.00
0.00
0.00
0.01
0.00
0.00
0.00
0.10
0.13
0.01
0.01
0.06
0.05
0.05
0.06
0.06
0.07
0.09
0.14
0.05
0.22
0.00
0.00
0.00
0.00
0.00
0.00
0.00
0.00
0.00
0.00
0.00
0.00
0.00
0.00
0.00
0.01
0.02
0.01
0.13
0.00
0.00
0.00
0.00
0.00
0.00
0.00
0.00
0.00
0.00
0.00
0.00
0.00
0.00
0.00
0.00
0.00
0.00
0.00
0.00
0.00
0.00
0.00
0.00
0.01
0.01
0.01
0.10
0.00
0.00
0.00
0.00
0.00
0.00
0.00
0.00
0.00
0.00
0.00
0.00
0.00
0.00
0.00
0.00
0.00
0.00
0.00
0.00
0.00
0.00
0.00
0.02
0.06
0.13
0.10
0.97
0.00
0.00
-0.01
-0.01
-0.01
-0.01
-0.01
0.00
-0.02
0.00
0.01
0.00
0.00
0.00
0.00
0.00
0.00
0.00
0.00
0.00
0.00
0.00
0.00
0.04
0.05
0.00
0.00
0.00
0.02
0.02
0.02
0.02
0.03
0.04
0.05
0.02
0.09
14
1.5.
Al f
on
so
Ga
rc
aP
ere
z.
UN
E
[31,]
[32,]
[33,]
[34,]
[35,]
[36,]
0.02
0.03
0.04
0.05
0.02
0.09
0.11
0.12
0.17
0.25
0.09
0.41
Regresi
on Robusta
En Regresi
on Robusta se puede proceder de dos maneras: una, mantener
la forma en la que se combinan las medias, varianzas y covarianzas muestrales
cl
asicas en los estimadores de los coeficientes de regresion, pero sustituyendolas
= mn
i=1
i=1
m
as generales que la no robusta de la recta de mnimos cuadrados, basada en
minimizar la funci
on cuadr
atica
mn
n
X
ri2
i=1
ri ()
xi = 0
15
Al f
on
so
Ga
rc
aP
ere
z.
UN
E
X
10
6 8
52 16
37
35 5
36
41 5
42
61
59 5
47
70
207
2547
6654
11700
9400
Y
115
179
440
2198 67
2308 14
2781 42
2698 95
3127 13
4420 59
6372 9
2197 55
10410 89
406
4603
5712
50
70
rlm(y~x,k2=1.345,scale.est="MAD", data=datos)
Esta funci
on, elige por defecto como tuning constant el valor b = 1 345 aunque se puede
modificar. El estimador del par
ametro de escala elegido por defecto es MAD (MR-secci
on 2.6)
aunque se puede especificar proposal 2 si se quiere utilizar la Hubers proposal 2 (MRsecci
on 7.2). El resto de argumentos es similar a los de la funci
on lm pero aqu los datos
necesariamente tienen que tener estructura data frame. Como siempre, si quiere m
as informaci
on de la funci
on basta con que ejecute ?rlm.
Para obtener esta recta con los datos del ejemplo, denominada recta22, ejecutamos (6) (representada despues de color rojo), a
nadiendo ambas rectas al gr
afico y obteniendo finalmente
la Figura 1.5 con la siguiente secuencia de sentencias,
16
Al f
on
so
Ga
rc
aP
ere
z.
UN
E
2000
4000
6000
8000
10000
Hombre actual
Chimpanc
50
100
150
200
>
>
>
>
>
>
>
>
>
>
ejem2<-matrix(scan("d:\\datos\\ejem2.txt"),ncol=2,byrow=T)
ejem2<-data.frame(ejem2[,1],ejem2[,2])
plot(ejem2[,1],ejem2[,2],xlim=c(0,208),pch=16,xlab="x",ylab="y")
text(80,10000,"Hombre actual")
text(70,500,"Chimpanc
e")
recta21<-lm(ejem2[,2]~ejem2[,1],data=ejem2)
abline(recta21)
library(MASS)
recta22<-rlm(ejem2[,2]~ejem2[,1],data=ejem2)
abline(recta22,col=2)
(1)
(2)
(3)
(4)
(4)
(5)
(6)
points(207,406,pch=16,col=4)
text(200,900,"Gorila")
ejem3<-matrix(scan("d:\\datos\\ejem3.txt"),ncol=2,byrow=T)
ejem3<-data.frame(ejem3[,1],ejem3[,2])
recta31<-lm(ejem3[,2]~ejem3[,1],data=ejem3)
recta32<-rlm(ejem3[,2]~ejem3[,1],data=ejem3)
abline(recta31)
17
Al f
on
so
Ga
rc
aP
ere
z.
UN
E
2000
4000
6000
8000
10000
Hombre actual
Gorila
Chimpanc
50
100
150
200
> abline(recta32,col=2)
n
X
i=1
|ri |
18
Al f
on
so
Ga
rc
aP
ere
z.
UN
E
y la recta de regresi
on de mnimos cuadrados recortados (least trimmed squares), denominada LTS, propuesta por Peter Rousseeuw (1984, 1985) y con
punto de ruptura 0 5,
mn
q
X
2
r(i)
i=1
2000
4000
6000
8000
10000
Hombre actual
Gorila
Chimpanc
50
100
150
lqs(y~x,method="lms",data=datos)
200
19
Al f
on
so
Ga
rc
aP
ere
z.
UN
E
lqs(y~x,data=datos)
Como antes, en ambos casos, los datos necesariamente tienen que tener estructura data frame. En las rectas as obtenidas no puede aplicarse la funci
on
summary para analizar la significaci
on del coeficiente de regresi
on.
La recta LTS tambien se obtiene con la funci
on ltsReg de la librera robustbase ejecutando
ltsReg(y~x,data=datos)
6000
8000
10000
Elefante africano
2000
4000
Elefante asitico
Triceratops
2000
4000
6000
8000
Diplodocus
10000
12000
Podemos calcular las rectas LMS (la verde, recta3) y LTS (la azul, recta4) e incorporarlas
al gr
afico anterior obteniendo la Figura 1.7. Se ve que ambas son robustas.
20
Al f
on
so
Ga
rc
aP
ere
z.
UN
E
>
>
>
>
>
>
>
recta3<-lqs(ejem3[,2]~ejem3[,1],method="lms",data=ejem3)
recta4<-lqs(ejem3[,2]~ejem3[,1],data=ejem3)
abline(recta3,col=3)
abline(recta4,col=4)
library(robustbase)
recta44<-ltsReg(ejem3[,2]~ejem3[,1],data=ejem3)
recta44
Call:
ltsReg.formula(formula = ejem3[, 2] ~ ejem3[, 1], data = ejem3)
Coefficients:
Intercept ejem3[, 1]
-443.69
75.82
Scale estimate 855.8
Ahora incorporamos el resto de datos del ejemplo para utilizar los 17 datos, introduciendo
de esta manera m
as outliers,
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
ejem5<-matrix(scan("d:\\datos\\ejem5.txt"),ncol=2,byrow=T)
ejem5<-data.frame(ejem5[,1],ejem5[,2])
plot(ejem5[,1],ejem5[,2],pch=16,xlab="x",ylab="y")
text(2500,5000,"Elefante asi
atico")
text(6600,6100,"Elefante africano")
text(9400,500,"Triceratops")
text(11400,500,"Diplodocus")
recta51<-lm(ejem5[,2]~ejem5[,1],data=ejem5)
recta52<-rlm(ejem5[,2]~ejem5[,1],data=ejem5)
recta53<-lqs(ejem5[,2]~ejem5[,1],method="lms",data=ejem5)
recta54<-lqs(ejem5[,2]~ejem5[,1],data=ejem5)
abline(recta51)
abline(recta52,col=2)
abline(recta53,col=3)
abline(recta54,col=4)
1.5.1.
S-estimadores
Propuestos por Rousseeuw y Yohai (1984) se basan en minimizar un M estimador de escala robusto de los residuos, de la siguiente forma:
Para cada valor fijo de se obtiene el estimador de escala
() resolviendo
la ecuaci
on en ,
21
Al f
on
so
Ga
rc
aP
ere
z.
UN
E
1X
n
i=1
ri ()
(1)
Coefficients:
(Intercept)
ejem3[, 1]
-632.72
82.84
Scale estimates 883.8
> X1
> X1
[1,]
[2,]
[3,]
[4,]
[5,]
[6,]
[7,]
[8,]
[9,]
[10,]
[11,]
[12,]
[13,]
(2)
22
Al f
on
so
Ga
rc
aP
ere
z.
UN
E
> recta56
[1] -507.63714
80.32232
1.5.2.
MM-estimadores
Propuestos por Yohai (1987) son M -estimadores con una gran punto de
ruptura y una gran eficiencia bajo un modelo normal. Para determinarlos
se comienza con una estimaci
on inicial de , que podemos denominar b0 ,
con alto punto de ruptura aunque seguramente con poca eficiencia bajo el
modelo normal (por ejemplo la obtenida con un S-estimador). Se determina a
continuaci
on un M -estimador robusto de escala
con los residuos ri (b0 ) (lo
que implica no necesitar un estimador previo de ) y, finalmente, se resuelve
la ecuaci
on
n
X
i=1
ri ()
xi = 0
23
Al f
on
so
Ga
rc
aP
ere
z.
UN
E
Call:
lmrob(formula = ejem3[, 2] ~ ejem3[, 1], data = ejem3)
Coefficients:
(Intercept)
ejem3[, 1]
-700.5
86.1
plot(ejem3[,1],ejem3[,2],pch=16,xlab="x",ylab="y")
abline(recta31)
abline(recta32,col=2)
abline(recta3,col=3)
abline(recta4,col=4)
abline(recta44,col=5)
abline(recta7,col=6)
abline(recta55,col=7)
abline(recta56,col=8)
La pregunta es, cu
al de ellas elegir. Nosotros sugerimos elegir la que de una mayor significaci
on al contraste sobre el coeficiente de regresi
on utilizando la funci
on summary. S
olo podemos
hacerlo con cuatro de ellas obteniendo los siguientes resultados:
> summary(recta31)
# la recta de m
nimos cuadrados
Coefficients:
Estimate Std. Error t value Pr(>|t|)
(Intercept) 2797.152
1268.292
2.205
0.0496 *
ejem3[, 1]
1.833
17.601
0.104
0.9189
> summary(recta32)
# la recta robusta de Huber
Coefficients:
Value
Std. Error t value
(Intercept) 2591.9197 1120.0630
2.3141
(1)
24
Al f
on
so
Ga
rc
aP
ere
z.
UN
E
ejem3[, 1]
-0.4214
15.5443
-0.0271
(2)
> summary(recta44)
# la recta lts
Coefficients:
Estimate Std. Error t value Pr(>|t|)
Intercept
-443.69
356.15 -1.246
0.253
ejem3[, 1]
75.82
9.20
8.241 7.54e-05 ***
(3)
> summary(recta7)
# la recta MM con robustbase
Coefficients:
Estimate Std. Error t value Pr(>|t|)
(Intercept) -700.52
420.33 -1.667 0.12379
ejem3[, 1]
86.10
20.18
4.266 0.00133 **
(4)
Los p-valores asociados a la recta de mnimos cuadrados y de Huber ((2) y (3), confirman la
no adecuaci
on de estas. El p-valor de la recta LTS es el menor. Por consiguiente, sugerimos
quedarnos con la recta
yt = 443 69 + 75 82 x
1.6.
Enmascaramiento
La teora cl
asica nos dice que una manera de actuar, alternativa a la Regresi
on Robusta, sera representar los residuos estandarizados (estimados) del
ajuste, es decir, las diferencias entre los valores observados y los obtenidos con
la recta estimada, divididos por un estimador de la desviaci
on tpica,
Residuos ri
yi yti
=
>
>
>
>
par(mfrow=c(1,2))
plot(rstandard(recta21))
text(3,-1.9,"Chimpanc
e")
text(10,2.2,"Hombre actual")
25
Al f
on
so
Ga
rc
aP
ere
z.
UN
E
Hombre actual
1
0
1
2
rstandard(recta31)
1
0
1
rstandard(recta21)
Hombre actual
Chimpanc
Gorila
10
12
Index
10
12
Index
Figura 1.9 : Gr
aficos de residuos
> plot(rstandard(recta31))
> text(10.6,2.3,"Hombre actual")
> text(12,-2.4,"Gorila")
> plot(rstandard(recta51),ylim=c(-3,3))
> text(16,2.5,"Hombre actual")
vemos en la gr
afica de la izquierda de la Figura 1.9 que aparecen como outliers
el Hombre actual y el Chimpance, pero cuando incorporamos al Gorila, este
outlier enmascara al Chimpance y aparecen como outliers s
olo el Hombre
actual y el Gorila, lo que indica que un gr
afico de residuos puede ser enga
noso.
26
Al f
on
so
Ga
rc
aP
ere
z.
UN
E
1
0
1
3
rstandard(recta51)
Hombre actual
10
15
Index
Figura 1.10 : Gr
aficos de residuos
1.7.
Referencias
Gauss, C.F. (1809). Theoria Motus Corporum Coelestium in Sectionibus Conicis Solem
Ambientum. (Disponible en Internet: digitalizado por Google).
Hampel, F.R. (1975). Beyond location parameters: Robust concepts and methods. Proceedings of 40th Session I.S.I., Warsaw 1975, Bull. Int. Statist. Inst., 46, Book 1, 375-382.
Legendre, A.M. (1805). Nouvelles methodes pour la determination des orbites des com`etes.
Apendice de Sur la Methode des moindres quarres.(Disponible en Internet: digitalizado
por Google).
Rao, C.R. (1973). Linear Statistical Inference and its Applications, 2a edici
on. Wiley.
Rousseeuw, P.J. (1984). Least median of squares regression. Journal of the American Statistical Association, 79, 871880.
Rousseeuw, P.J. (1985). Multivariate estimation with high breakdown point. In: Grossmann
W, Pflug G, Vincze I, Wertz W, editores. Mathematical Statistics and Applications,
Vol. B, Dordrecht: Riedel Publishing Company, 283297.
Rousseeuw, P.G. y Leroy, A.M. (1987). Robust Regression and Outlier Detection. Wiley
D
Al f
on
so
Ga
rc
aP
ere
z.
UN
E
Captulo 2
Modelos Lineales
Generalizados Univariantes
2.1.
Introducci
on
27
Al f
on
so
Ga
rc
aP
ere
z.
UN
E
28
Ejemplo 2.2
Feigl y Zelen (1965) analizaron datos de 33 pacientes con leucemia para los que se anot
o si
su tiempo de supervivencia era superior a 52 semanas (de hecho, ellos anotaron el tiempo de
supervivencia y no s
olo si era o no mayor a 52 semanas), que correspondera a un valor igual
a 1, exito, de la variable dependiente Y , con probabilidad p, siendo Y = 0 si ese tiempo de
supervivencia era inferior o igual a 52 semanas, fracaso, de probabilidad 1 p.
Como covariables independientes que se piensa pueden explicar a esta, se consideraron la
covariable W BC, n
umero de gl
obulos blancos por milmetro c
ubico de sangre, (o leucocitos,
o en ingles White Blood Cell Count) indicando un valor alto de esta covariable la existencia de infecci
on, y la covariable AG, presencia (AG = 1) o ausencia (AG = 0) de cierta
caracterstica morfol
ogica de los gl
obulos blancos. A estos datos se ajustar
a en Modelo de
Regresi
on Logstica cl
asico y otro robusto.
Ejemplo 2.3
Los artculos de Lindenmayer y sus colaboradores (en la bibliografa damos dos de estos
artculos) proporcionan multitud de datos sobre las Monta
nas Centrales de Victoria en Australia. Aqu trabajaremos con datos sobre diferentes especies de marsupiales arborcolas de
Bosques Montano tipo Ash (Montane Ash Forest).
En este estudio se analizaron 151 lugares diferentes de 3ha con vegetaci
on uniforme, observ
andose en cada uno de estos las siguientes 14 variables: La variable dependiente de
respuesta, n
umero de especies de marsupiales en el lugar (Diversidad), y las 13 covariables
siguientes: el n
umero de arbustos (Arbustos); si haba, 1, o no, 0, tocones de pasadas operaciones forestales (Tocones) que es una variable cualitativa con dos niveles; el n
umero de
arboles de porte hueco (Stags); un ndice de cortezas extradas (Cortezas); un ndice de habitabilidad para marsupiales (Habitat); el
area de acacias (Acacias); el tipo de Eucalipto que
es una variable cualitativa con tres niveles: Eucalipto regnans (Regnans), Eucalipto delegatensis (Delegatensis) y Eucaliptus nitens (Nitens); y, por u
ltimo, el aspecto del lugar que es
una variable de tipo cualitativo con cuatro niveles, (NWNE), (NWSE), (SESW) y (SWNW).
Se pretende ajustar un Modelo de Regresi
on Poisson a estos datos, primero cl
asico y, despues,
robusto.
2.2.
Definici
on de Modelo Lineal Generalizado univariante
29
Al f
on
so
Ga
rc
aP
ere
z.
UN
E
M
ultiple (estudiado en el Captulo 10 de CB) supone considerar una variable
dependiente o de respuesta Y sobre la que pensamos influyen linealmente k
variables independientes o covariables X1 , ..., Xk de la forma
Y = 0 + 1 X1 + ... + k Xk + e
[2.1]
yi
..
.
xi1
yn
...
xik
i = 1, ..., n.
i = 1, ..., n.
30
Al f
on
so
Ga
rc
aP
ere
z.
UN
E
con
i = 1, ..., n
i = 1, ..., n.
o bien,
i = g(i ) = zti
i = 1, ..., n
i = 1, ..., n.
31
Al f
on
so
Ga
rc
aP
ere
z.
UN
E
a partir de la funci
on b de la forma w2 (i ) = b (i ) = 2 b(i )/i2 . Es decir,
suponemos que es E(Yi /xi ) = b (i ) y V ar(Yi /xi ) = b (i ) .
Para cada familia exponencial existe una funci
on link natural o can
onica
que es la que iguala al par
ametro natural con el predictor lineal; es decir,
i = w1 (i ) = g(i ) = i = zti ; es decir, la obtenida a partir de la ecuaci
on
g() w1 ().
Ejemplo 2.4
Si las Yi /xi se distribuyen como normales N (i , ), su funci
on de densidad ser
a
2
2
1
1
1
yi i 2i /2
2
2
El termino restante deber
a ser exp{c(yi , )} = 1/( 2) eyi /(2 ) aunque este es irrelevante
a la hora de identificar los elementos de la distribuci
on modelo.
Como se observa, es b (i ) = b(i )/i = i y w2 (i ) = b (i ) = 2 b(i )/i2 = 1, con lo
que V ar(Yi /xi ) = w2 (i ) = .
Finalmente, de la ecuaci
on clave
g() w1 () =
1
exp{yi log i i }
yi !
b(i ) = i
32
Al f
on
so
Ga
rc
aP
ere
z.
UN
E
pi
1 pi
b(i ) = ni log(1 pi )
= 1.
pi
ni pi
i
= log
= log
1 pi
ni ni pi
ni i
y, finalmente, de la ecuaci
on g() w1 (), la funci
on link can
onica g() = log(/(n )).
Por tanto, la ecuaci
on que relaciona la media de la variable de respuesta con las covariables
g(i ) = zti , ser
a
i
ni pi
pi
= log
= log
= 0 + 1 X1 + ... + k Xk .
log
ni i
ni ni pi
1 pi
Observemos que, en el caso de que la variable respuesta sea Bernoulli, Yi /xi ; B(1, pi ) en
donde esta s
olo toma los valores exito y fracaso, tendremos un caso particular del anterior
(correspondiente a la regresi
on logstica) en donde la funci
on link ser
a g() = log(/(1 ))
o lo que es lo mismo, g(p) = log(p/(1 p)) por ser para esta distribuci
on = p. La ecuaci
on
que relaciona la media de la variable de respuesta con las covariables es, en este caso, la
misma de antes,
i
pi
log
= log
= 0 + 1 X1 + ... + k Xk
1 i
1 pi
por lo que no se suele hacer distinci
on entre estos dos u
ltimos casos y se habla de la funci
on
link can
onica g() = log(/(1 )), denominada logit.
g() = .
Con el software Rmo suministrado con el curso podemos trabajar con los
cinco modelos antes mencionados, podemos formar la Tabla 2.1 en la que
33
Al f
on
so
Ga
rc
aP
ere
z.
UN
E
Normal
Poisson
p
C
Modelos
Binomial Gamma
Gaussianoinverso
Funciones link
identidad
logaritmo
logit
inversa
gaussiana-inversa
probit
complementaria log-log
raz cuadrada
p
p
p
p
2.2.1.
Dispersi
on excesiva (Overdispersion)
2.3.
Estimaci
on y Contrastes basados en la verosimilitud
La estimaci
on de los par
ametros del Modelo Lineal Generalizado (as como
contrastes de hip
otesis referentes a estos), adem
as de dos tests de bondad del
ajuste, se pueden realizar siguiendo metodos basados en la verosimilitud. En
posteriores secciones estudiaremos Metodos basados en la cuasi-verosimilitud
34
Al f
on
so
Ga
rc
aP
ere
z.
UN
E
y Metodos Bayesianos.
2.3.1.
Estimador de m
axima verosimilitud de los par
ametros
i
En esta secci
on determinaremos la forma en la que estimar los par
ametros i del modelo; es posible que los diferentes par
ametros y funciones que
intervienen en el Modelo Lineal Generalizado puedan entorpecer la comprensi
on del proceso, pero hemos querido desgranar este puesto que la ecuaci
on
de verosimilitud resultante (en realidad, sistema de ecuaciones) es clave en las
posteriores generalizaciones y robustificaci
on.
La manera en la que habitualmente hemos estimado los par
ametros de
un modelo es mediante la utilizaci
on del Metodo de la M
axima Verosimilitud
(CB-secci
on 5.2). Para ello, primero debemos expresar la funci
on de verosimilitud como funci
on del par
ametro. Si observamos [2.2] los par
ametros del
modelo seran i y ; de momento supondremos conocido (aunque m
as abajo
volveremos sobre ello). La funci
on de verosimilitud ser
a, por tanto,
L(1 , ..., n ) =
n
Y
f (yi /i ) = exp
i=1
n
X
yi i b(i )
i=1
)
c(yi , )
El Metodo de la M
axima Verosimilitud indica asignar como estimadores
de los par
ametros a aquellos valores que hagan m
axima dicha funci
on de verosimilitud. Como el m
aximo de una funci
on y de su logaritmo se alcanzan en
el mismo punto, determinaremos el maximo del logaritmo de L(1 , ..., n ),
log L(1 , ..., n ) =
n
X
yi i b(i )
i=1
n
X
c(yi , )
i=1
n
X
yi w1 (i ) b(w1 (i ))
i=1
+ cte =
n
X
li (i ) + cte [2.3]
i=1
y si volvemos a reparametrizar, expresando la verosimilitud anterior en terminos de las i y las covariables, por ser i = h(zti ) tendremos
35
Al f
on
so
Ga
rc
aP
ere
z.
UN
E
log L() =
n
X
yi w1 (h(zt )) b(w1 (h(zt ))
i
i=1
+ cte
[2.4]
i=1
!
w1 (i )
i b (w1 (i ))
i i =h(zt )
!
#
w1 (i )
i
i i =h(zt )
n
X
i=1
w1 (i )
i
i =h(zti )
i (yi i ())
!
h()
zti
=
=h(zt )
!
h()
zi = Di () zi
=h(zt )
i
en donde la u
ltima igualdad s
olo se ha introducido como notaci
on para definir
Di ().
Como es i = b (i ) ser
a i = (b )1 (i ) y, como era i = w1 (i ) ,
1
ser
a w1 (i ) = (b ) (i ) por lo que, utilizando la f
ormula para la derivada de
la funci
on inversa, ser
a
w1 (i )
(b )1 (i )
1
1
1
=
= 1
=
=
=
i
i
b ((b ) (i ))
b (i )
w2 (i )
V ar(Yi /xi )
36
Al f
on
so
Ga
rc
aP
ere
z.
UN
E
i=1
i=1
X i
log L() X zi Di ()
=
(yi i ()) =
(yi i )
V ar(Yi /xi )
w2 (i )
como aparece, respectivamente, en Fahrmeir y Tutz (1994, pag. 38) o en Cantoni y Ronchetti (2001, p
ag. 1022).
El sistema de ecuaciones de verosimilitud
n
log L() X i
=
(yi i ) = 0
w2 (i )
[2.5]
i=1
2.3.2.
b =
A()
n
X
i=1
b
zi zti Di2 ()
b
w2 (h(zti ))
b =
X (yi bi )2
1
n (k + 1)
w2 (bi )
i=1
[2.6]
37
Al f
on
so
Ga
rc
aP
ere
z.
UN
E
2.3.3.
Contrastes de hip
otesis sobre los par
ametros
Una vez obtenidos los estimadores para los i , podemos considerar el realizar tests de hip
otesis sobre ellos de la forma H0 : C = c0 frente a la
alternativa H1 : C 6= c0 . (En esta secci
on supondremos que el par
ametro
de escala es conocido o reemplazado por el valor [2.6].)
Un caso particular de estas hip
otesis, muy importante, es el contraste de
H0 : r = 0 frente a H0 : r 6= 0 siendo r un subvector de ; es decir,
el contraste de ser cero algunas i frente a la alternativa de modelo completo,
en el que todas las i son distintas de cero.
Se consideran tres tipos de tests de hip
otesis. El primero es el test de
raz
on de verosimilitudes (Velez y Garca Perez, 1993, secci
on 9.2) basado en
el estadstico de contraste
=
e
sup0 L()
L()
=
b
sup L()
L()
de m
axima verosimilitud.
Como todo test de hip
otesis, este requiere para su ejecuci
on de la distribuci
on del estadstico de contraste bajo la hip
otesis nula. Aunque la distribuci
on
exacta no es f
acilmente calculable, no obstante, s se sabe (Velez y Garca
Perez, 1993, p
agina 395) que, para tama
nos muestrales suficientemente grandes, se tiene aproximadamente una distribuci
on 2
h
i
h
i
e log L()
b = 2 log L()
b log L()
e ; 2
2 log = 2 log L()
k+1q
siendo q la dimensi
on del espacio parametrico bajo la hip
otesis nula. Por ejemplo, si la hip
otesis nula fuera que uno s
olo de los i fuera cero, la dimensi
on del
espacio parametrico sera k ya que H0 s
olo fija una restricci
on (que sea i = 0),
por lo que deja libres de tomar cualquier valor a los otros k par
ametros. En
38
Al f
on
so
Ga
rc
aP
ere
z.
UN
E
este caso, los grados de libertad de la 2 con los que buscar puntos crticos y
calcular p-valores seran k + 1 q = k + 1 k = 1.
Otro test de hip
otesis muy utilizado es el test de Wald basado en el estadstico de contraste
t h
i1
b t
Wald = Cb c0
CA1 ()C
Cb c0
log L()
Estos dos u
ltimos estadsticos de contraste tambien tienen, bajo la hip
otesis
nula, la misma distribuci
on asint
otica 2k+1q que tena el estadstico de raz
on
de verosimilitudes. Mientras que cualquiera de los tres tests es aceptable para
modelos sin overdispersion, es muy recomendable utilizar estos dos u
ltimos
cuando esta est
a presente.
2.3.4.
n
X
(yi bi )2
i=1
w2 (bi )
n
X
i=1
2.4.
39
Al f
on
so
Ga
rc
aP
ere
z.
UN
E
C
alculo con Rmo
(1)
> zanahorias
da~
nadas total logdosis bloque bloque1 bloque2
1
10
35
1.52
1
1
0
2
16
42
1.64
1
1
0
.................................................
23
3
22
2.24
3
0
0
24
2
31
2.36
3
0
0
40
Al f
on
so
Ga
rc
aP
ere
z.
UN
E
(2)
(3)
> resultado
(4)
Call:
Coefficients:
(Intercept)
1.4802
logdosis
-1.8174
bloque2
0.8433
bloque1
0.5424
(5)
Call:
glm(formula = respuesta ~ logdosis + bloque2 + bloque1,
family = binomial, data = zanahorias)
Deviance Residuals:
Min
1Q
Median
-1.9200 -1.0215 -0.3239
3Q
1.0602
Max
3.4324
Coefficients:
Estimate Std. Error z value Pr(>|z|)
(Intercept)
1.4802
0.6554
2.258 0.023918 *
logdosis
-1.8174
0.3434 -5.293 1.20e-07 ***
bloque2
0.8433
0.2257
3.736 0.000187 ***
bloque1
0.5424
0.2315
2.343 0.019118 *
(6)
--Signif. codes:
(8)
(7)
***
0.001
**
0.01
0.05
0.1
41
Al f
on
so
Ga
rc
aP
ere
z.
UN
E
on 23
on 20
degrees of freedom
degrees of freedom
1
0
2
residuals(resultado)
10
15
20
Figura 2.1 : Gr
afico de los Residuos
i
ni i
El valor del estadstico deviance que aparece en (9), igual a G2 = 39 976, se utiliza en el
contraste de la hip
otesis nula de adecuarse correctamente el modelo anterior a los datos
42
Al f
on
so
Ga
rc
aP
ere
z.
UN
E
observados y que corresponde a una 2n(k+1) = 2244 = 220 . El p-valor de este test ser
a,
por tanto,
> 1-pchisq(39.976,20)
[1] 0.005030426
indicando, de forma sorprendente, que debe rechazarse la bondad del ajuste del modelo obtenido cuando los contrastes individuales para los par
ametros i indicaban que las covariables
s explicaban a la variable respuesta.
Si representamos los residuos del modelo ajustado en la Figura 2.1 mediante la siguiente
secuencia,
> i<-seq(1,24)
> plot(i,residuals(resultado))
A continuaci
on realizaremos un An
alisis de Regresi
on Logstica desde un
punto de vista cl
asico. El an
alisis robusto de estos datos se ver
a al final del
captulo.
Ejemplo 2.2 (continuaci
on)
Para los datos de Feigl y Zelen (1965) se pretende ajustar un Modelo de Regresi
on Logstica
(cl
asico en esta secci
on) de la forma
log
p
= 0 + 1 W BC + 2 AG
1p
Los datos observados aparecen en el fichero de datos leucemia, proporcionado entre el Material Did
actico del curso. (Los valores de W BC del fichero fueron divididos por 104 con lo
que habr
a que multiplicarlos por esta cantidad en la f
ormula del modelo ajustado.)
Como los datos a utilizar deben de estar en forma de estructura de datos, ejecutamos (1)
para incluirlos en Rmo con ese formato al utilizar la funci
on read.table. A continuaci
on lo
comprobamos.
> leucemia<-read.table("d:\\datos\\leucemia",header=T)
(1)
> leucemia
Super
WBC AG
1
1 0.230 1
2
1 0.075 1
3
1 0.430 1
.................................................
32
0 10.000 0
33
0 10.000 0
43
Al f
on
so
Ga
rc
aP
ere
z.
UN
E
glm(formula = Super ~
Coefficients:
(Intercept)
-1.3074
(2)
(3)
WBC
-0.3177
AG
2.2611
(4)
Call:
glm(formula = Super ~ WBC + AG, family = binomial, data = leucemia)
Deviance Residuals:
Min
1Q
Median
-1.5224 -0.6417 -0.4534
3Q
0.8362
Max
2.1569
Coefficients:
Estimate Std. Error z value Pr(>|z|)
(Intercept) -1.3074
0.8140 -1.606
0.1083
WBC
-0.3177
0.1856 -1.712
0.0870 .
AG
2.2611
0.9517
2.376
0.0175 *
(5)
--Signif. codes:
(7)
(6)
***
0.001
**
0.01
0.05
0.1
on 32
on 30
degrees of freedom
degrees of freedom
p
= 1 3074 0 3177 W BC(10000) + 2 2611 AG.
1p
El valor del estadstico deviance que aparece en (8), igual a G2 = 31 062, se utiliza en el
contraste de la hip
otesis nula de adecuarse correctamente el modelo anterior a los datos
44
Al f
on
so
Ga
rc
aP
ere
z.
UN
E
0
1
residuals(solu)
10
15
20
25
30
Figura 2.2 : Gr
afico de los Residuos
observados y que corresponde a una 2n(k+1) = 2333 = 230 . El p-valor de este test ser
a,
por tanto,
> 1-pchisq(31.062,30)
[1] 0.4123636
indicando que debe aceptarse, por contra, la bondad del ajuste del modelo obtenido.
Si representamos los residuos del modelo ajustado en la Figura 2.2 mediante la siguiente
secuencia,
> i<-seq(1,33)
> plot(i,residuals(solu))
45
Al f
on
so
Ga
rc
aP
ere
z.
UN
E
Como los datos a utilizar deben de estar en forma de estructura de datos, ejecutamos (1)
para incluirlos en Rmo con este formato al utilizar la funci
on read.table
> marsu<-read.table("d:\\datos\\marsu",header=T)
(1)
(2)
> respu
(3)
Arbustos
0.01192
Stags
0.04023
Cortezas
0.03989
Habitat
0.07173
Acacias
0.01764
Tocones
-0.27241
Delegatensis
-0.01534
Nitens
0.11492
NWSE
0.06675
SESW
0.11695
SWNW
-0.48890
139 Residual
> summary(respu)
Call:
glm(formula = Diversidad ~ Arbustos + Stags + Cortezas + Habitat +
Acacias + Tocones + Delegatensis + Nitens + NWSE + SESW +
(4)
46
Al f
on
so
Ga
rc
aP
ere
z.
UN
E
Median
0.05173
3Q
0.44497
Max
1.78911
Coefficients:
(Intercept)
Arbustos
Stags
Cortezas
Habitat
Acacias
Tocones
Delegatensis
Nitens
NWSE
SESW
SWNW
--Signif. codes:
(7)
(6)
***
0.001
**
0.01
0.05
0.1
on 150
on 139
degrees of freedom
degrees of freedom
Stags
0.04095897
Cortezas
0.04064307
Habitat
0.07820446
Acacias
SWNW
0.01363301 -0.59674721
47
Al f
on
so
Ga
rc
aP
ere
z.
UN
E
14
133
65
30
124
88 93
89
92
64
15
24
23
139
110
59
34
35
102
123128
130
119
117
75
147
144
148
0
2
residuals(respu)
19 25
26
68
70
50
111 120
48
43
108
73
45
91
46 51 55 61
122
78
60
52
104
94
72
58
2
74 79
126
16
17 22
143 149
82
18
31
49
33 39
96
71
136141
115
142
83
98
4
80
107 114
37
105
63 69
62
1 5
40
99
47
103
76 84
113
21 27
8
66
3
53 57
77
20 28
29
118
145
6
42
129 135
146
81 87
137
116
101
97
9
131 138
54
106
151
150
100
112
85
121
41
132
109
1013
127
56
36 44
140
95
125
38
134
67
90
12
11
32
86
50
100
150
Figura 2.3 : Gr
afico de los Residuos
[2.7]
48
Al f
on
so
Ga
rc
aP
ere
z.
UN
E
n
umero observado por 10
o 100, y hablar de n
umero de especies de marsupiales de cada 10
2.5.
M
etodos basados en la cuasi-verosimilitud
La definici
on de Modelo Lineal Generalizado, establecida en la secci
on
segunda, lleva a suponer un distribuci
on concreta de tipo exponencial para las
observaciones Yi /xi (Poisson, normal, etc).
Adem
as, una estructura para la media E[Yi /xi ] = i = zti la cual implica
una forma concreta para la varianza, ya que esta est
a relacionada con la media
a traves de la expresi
on V ar(Yi /xi ) = w2 (i ) = w2 (zti ).
La estimaci
on y contrastes basados en la cuasi-verosimilitud (Wedderburn,
1974; McCullagh y Nelder, 1989; Heyde, 1997) relajan la suposici
on de una
familia de tipo exponencial para las observaciones y, tambien, algo la anterior
ligadura entre la media y la varianza, ya que siguen suponiendo para la media
la forma
E[Yi /xi ] = i = zti
V ar(Yi /xi ) = w2 (i )
n
X
i=1
i
(yi i ) = 0
w2 (i )
[2.8]
w2 (i )
2.6.
M
etodos Bayesianos
Si existe informaci
on previa sobre los par
ametros suministrada a traves
de una distribuci
on a priori (), por el teorema de Bayes, la distribuci
on a
49
Al f
on
so
Ga
rc
aP
ere
z.
UN
E
(/y1 , ..., yn ) = R
L() ()
L() ()d
la funci
on anterior a maximizar sera
1
( )t B1 ( )
2
la cual puede maximizarse iterativamente, por ejemplo, mediante el algoritmo
EM (Expectation-Maximizing).
log L()
2.7.
M
etodos robustos
50
Al f
on
so
Ga
rc
aP
ere
z.
UN
E
(yi i )
i
w2 (i )
Como la funci
on de influencia de tales estimadores es proporcional a esta
funci
on (vease la ecuaci
on [6.3] del texto MR), si esta funci
on score no es
acotada (como funci
on de las observaciones yi o de las funciones xi a traves
de i ) el estimador resultante no ser
a robusto. Aqu, como puede observarse,
la diferencia yi i del numerador nos dice que no es acotada y que, por
tanto, los estimadores de m
axima verosimilitud y cuasi-verosimilitud, no van
a ser robustos frente a observaciones yi distantes de su media i o frente a la
presencia de datos an
omalos en las covariables xi .
Aunque existen varios trabajos sobre regresi
on logstica robusta, principalmente del grupo Agoras liderado por Peter Rousseeuw, aqu expondremos la
soluci
on propuesta por Elvezio Ronchetti (y Eva Cantoni) en su trabajo de
2001 para todo modelo lineal generalizado.
2.7.1.
Como dijimos m
as arriba, la forma de las ecuaciones de verosimilitud [2.5]
y cuasi-verosimilitud [2.8] sugiere buscar el estimador robusto entre los M estimadores (MR-secciones 2.5 y 6.5.2), uno de los cuales es el estimador de
m
axima verosimilitud y otro el estimador basado en la cuasi-verosimilitud.
En concreto, Cantoni y Ronchetti (2001) sugieren M -estimadores para los
par
ametros con funci
on asociada, de la forma
(yi , i ) = w(xi ) (yi , i ) i a()
n
X
i=1
w(xi ) (yi , i ) i a() = 0
[2.9]
51
Al f
on
so
Ga
rc
aP
ere
z.
UN
E
a() =
1X
Eyi /xi [(yi , i )] w(xi ) i
n
i=1
(en donde Eyi /xi representa la esperanza o media con respecto a la distribuci
on condicionada yi /xi ) con objeto de que el estimador resultante sea Fisherconsistente1 .
Como funciones w(xi ) y (yi , i ) se suelen elegir funciones que han dado
buenos resultados en Regresi
on Lineal, desde el punto de vista de la robustez.
Observese que si elegimos
w(xi ) = 1
(yi , i ) =
(yi i )
w2 (i )
i = 1, ..., n
en donde es
b (ri )
(yi , i ) = p
w2 (i )
(yi i )
ri = p
w2 (i )
b
b (x) = mn{b, m
ax{x, b}} = x mn 1,
|x|
si
x < b
b
x
si
b x b
=
b
si
x>b
param
etrico, y que significa que el estimador, con funcional asociado T , toma, asint
oticamente, el
valor correcto del par
ametro.
52
Al f
on
so
Ga
rc
aP
ere
z.
UN
E
n
X
i=1
"
#
b (ri )
w(xi ) p
i a() = 0
w2 (i )
2.7.2.
M
as arriba basamos el contraste de bondad de ajuste de un modelo lineal
generalizado a unos datos en el estadstico de contraste desviaci
on (deviance)
2
G = 2
n
X
i=1
"
n
X
i=1
Qi (yi , ei )
n
X
i=1
Qi (yi , bi )
53
Al f
on
so
Ga
rc
aP
ere
z.
UN
E
Q2 ;
q
X
di Yi
i=1
2.7.3.
C
alculo con Rmo
54
Al f
on
so
Ga
rc
aP
ere
z.
UN
E
(1)
> salida.robusta$coeff
[1] 1.9301522 -2.0497142
(2)
0.6897909
0.4613198
> salida.robusta$sd.coeff
[1] 0.6984066 0.3689728 0.2366980 0.2413989
(3)
Si ahora queremos validar el modelo con el que nos quedaremos, podemos hacer contrastes
anidados como los que se indicaban m
as arriba, consistentes en establecer como hip
otesis
alternativa un modelo con un n
umero determinado de covariables y como hip
otesis nula un
submodelo de este. Si rechazamos la hip
otesis nula, con un p-valor bajo, podemos concluir
que la covariable no incluida en el modelo de la hip
otesis nula (en el submodelo) es relevante
a la hora de explicar a la variable dependiente. Todo esto lo haremos con la funci
on anterior
quasi.rob
Primero plantearemos la hip
otesis alternativa de un modelo con las tres covariables consideradas, logdosis, bloque1 y bloque2 frente a la hip
otesis nula del submodelo sin la covariable
bloque2. Para ello ejecutamos la secuencia siguiente en donde destacamos como en la lnea
marcada con (4) incluimos, como primer argumento de la funci
on, un modelo las tres covariables que aparecen en las columnas 3, 5 y 6 de la matriz de datos, y como en la lnea (5) le
decimos, con el argumento out.col=3, que como hip
otesis nula considere el submodelo sin
la que aparece en la columna 3 de las anteriores, es decir, en la columna 6 de la matriz de
datos, es decir, sin bloque2.
El p-valor de este test lo obtenemos ejecutando (6) que claramente indica que rechazamos la
hip
otesis nula del submodelo, lo que indica cierta significaci
on (i.e., algo explica) la covariable
bloque2.
> resultado<-quasi.rob(as.matrix(zanahorias[,c(3,5,6)]),
+ as.matrix(zanahorias[,1]),out.col=3,choice="binom",
+ ni=as.matrix(zanahorias[,2]))
(4)
(5)
> resultado$pvalue
(6)
[,1]
[1,] 0.003565751
55
Al f
on
so
Ga
rc
aP
ere
z.
UN
E
En el primer test obtuvimos el p-valor 0 0036. Los otros dos p-valores los obtenemos ejecutando
> quasi.rob(as.matrix(zanahorias[,c(3,5,6)]),as.matrix(zanahorias[,1]),
+ out.col=2,choice="binom",ni=as.matrix(zanahorias[,2]))$pvalue
[,1]
[1,] 0.05600116
y
> quasi.rob(as.matrix(zanahorias[,c(3,5,6)]),as.matrix(zanahorias[,1]),
+ out.col=1,choice="binom",ni=as.matrix(zanahorias[,2]))$pvalue
[,1]
[1,] 2.773081e-08
> quasi.rob(as.matrix(zanahorias[,c(3,6)]),as.matrix(zanahorias[,1]),
+ out.col=2,choice="binom",ni=as.matrix(zanahorias[,2]))$pvalue
[,1]
[1,] 0.01178241
y
> quasi.rob(as.matrix(zanahorias[,c(3,6)]),as.matrix(zanahorias[,1]),
+ out.col=1,choice="binom",ni=as.matrix(zanahorias[,2]))$pvalue
[,1]
[1,] 3.961684e-08
56
Al f
on
so
Ga
rc
aP
ere
z.
UN
E
> glm.rob(as.matrix(zanahorias[,c(3,6)]),as.matrix(zanahorias[,1]),
+ choice="binom",ni=as.matrix(zanahorias[,2]))$coeff
[1]
2.1187526 -2.0355601
0.4759153
> a<-glm.rob(as.matrix(zanahorias[,c(3,6,5)]),as.matrix(zanahorias[,1]),
+ choice="binom",ni=as.matrix(zanahorias[,2]))
There were 26 warnings (use warnings() to see them)
> a$coeff
[1] 1.4540106 -1.8078152
0.8497862
0.5524021
Veamos a continuaci
on dos ejemplos de An
alisis de Regresi
on Logstica
robusta.
> B<-glm.rob(as.matrix(leucemia[,c(2,3)]),as.matrix(leucemia[,c(1)]),
+ choice="logit")
> B$coeff
[1] 0.1646176 -2.0318031
2.4926958
(1)
57
Al f
on
so
Ga
rc
aP
ere
z.
UN
E
Para ello ejecutamos la secuencia siguiente en donde destacamos como en la lnea marcada
con (2) incluimos, como primer argumento de la funci
on, un modelo con las dos covariables
que aparecen en las columnas 2 y 3 de la matriz de datos, y como en la lnea (3) le decimos,
con el argumento out.col=2, que como hip
otesis nula considere el submodelo sin la covariable
que aparece en la columna 2 de las anteriores, es decir, en la columna 3 de la matriz de datos,
es decir, sin AG.
El p-valor de este test lo obtenemos ejecutando (4) que no es concluyente en cuanto al rechazo
de la hip
otesis nula del submodelo (desde luego la rechaza para un nivel de significaci
on 0 05),
indicando cierta significaci
on (i.e., algo explica) la covariable AG.
> a1<-quasi.rob(as.matrix(leucemia[,c(2,3)]),as.matrix(leucemia[,c(1)]),
out.col=2,choice="logit")
(2)
(3)
> a1$pvalue
(4)
[,1]
[1,] 0.04645812
> a2<-quasi.rob(as.matrix(leucemia[,c(2,3)]),as.matrix(leucemia[,c(1)]),
out.col=1,choice="logit")
(5)
> a2$pvalue
(6)
[,1]
[1,] 0.1371982
2.063683
58
Al f
on
so
Ga
rc
aP
ere
z.
UN
E
qued
andonos, por tanto, con el modelo de Regresi
on Logstica robusto
log
p
= 1 9459 + 2 063683 AG.
1p
> A<-glm.rob(as.matrix(valores[,c(10)]),as.matrix(valores[,c(6)]),
+ choice="logit")
> A$coeff
[1] 1.335000 -1.180849
Observemos que obtenemos las mismas estimaciones para los coeficientes que obtenamos
all (al final de la Secci
on 9.4 de TA) puesto que no haba datos an
omalos entre las observaciones.
> C<-glm.rob(as.matrix(marsu[,c(2,3,4,5,6,7,9,10,12,13,14)]),
+ as.matrix(marsu[,c(1)]),choice="poisson")
> C$coeff
[1] -0.89780510 0.00994289 -0.25141328
[6] 0.07141413 0.01777746 -0.02022772
[11] 0.09492416 -0.50792232
(1)
0.04016733
0.12693237
0.03999019
0.06009973
Si acept
aramos este modelo de Regresi
on Poisson robusta, nos quedara por tanto,
log Diversidad
59
Al f
on
so
Ga
rc
aP
ere
z.
UN
E
0.04057311
0.04099017
0.07762185
0.01429919 -0.60443908
log Diversidad
2.8.
Referencias
Cantoni, E. y Ronchetti, E. (2001). Robust inference for generalized linear models. Journal
of the American Statistical Association 96, 1022-1030.
Fahrmeir, L. y Tutz, G. (1994). Multivariate Statistical Modelling Based on Generalized
Linear Models. Springer-Verlag.
K
unsch, H.R., Stefanski, L.A., y Carroll, R.J. (1989). Conditionally unbiased boundedinfluence estimation in general regression models, with applications to generalized
linear models. Journal of the American Statistical Association 84, 460-466.
Lindenmayer, D.B., Cunningham, R.B., Tanton, M.T., Smith, A.P., y Nix, H.A. (1990). The
conservation of arboreal marsupials in the montane ash forest of the central highlands
of Victoria, south-east Australia: I. Factors influencing the occupancy of trees with
hollows. Biological Conservation 54, 111-131.
Al f
on
so
Ga
rc
aP
ere
z.
UN
E
60
Lindenmayer, D.B., Cunningham, R.B., Tanton, M.T., Nix, H.A., y Smith, A.P. (1991). The
conservation of arboreal marsupials in the montane ash forest of the central highlands
of Victoria, south-east Australia: III. The habitat requirements of Leadbeaters possum
Gymnobelideus leadbeateri and models of the diversity and abundance of arboreal
marsupials. Biological Conservation 56, 295-315.
Maronna, R.A., Martin, R.D. y Yohai, V.J. (2006). Robust Statistics. Theory and Methods.
Wiley.
Sinha, S.K. (2004). Robust analysis of generalized linear mixed models. Journal of the
American Statistical Association 99, 451-460.
Stefanski, L.A., Carroll, R.J. y Ruppert, D. (1986). Optimally bounded score functions
for generalized linear models with applications to logistic regression. Biometrika 73,
413-424.
Velez, R. y Garca Perez, A. (1993). Principios de Inferencia Estadstica. UNED.
Wedderburn, R.W.M. (1974). Quasi-likelihood functions, generalized linear models, and the
Gauss-Newton method. Biometrika 61, 439-447.
D
Al f
on
so
Ga
rc
aP
ere
z.
UN
E
Captulo 3
T
ecnicas Actuales en el
An
alisis de Series Temporales
3.1.
Introducci
on
Tambien puede analizarse una serie temporal mediante el Suavizado Exponencial (Exponential Smoothig), en donde se aplica la misma idea del filtrado.
De hecho, algunos autores consideran el Suavizado un caso particular de Filtrado.
Tambien el uso de tecnicas de Regresi
on Lineal es habitual en un An
alisis
de Series Temporales. Suelen ajustarse funciones lineales o cuadr
aticas para
explicar la Tendencia, a las que se les suma unas funciones trigonometricas
(series de Fourier) para explicar las Variaciones Estacionales. Este tipo de
tecnicas se suele denominar An
alisis Espectral (Spectral Analysis).
No obstante, las tecnicas m
as frecuentemente utilizadas son las dise
nadas
por Box y Jenkins en la decada de los 60, mediante los modelos ARIMA y sus
generalizaciones, en donde se supone que los residuos Rt son una serie estacionaria a la que se ajusta un modelo ARMA. En esta captulo nos centraremos
61
62
Al f
on
so
Ga
rc
aP
ere
z.
UN
E
en este u
ltimo tipo de an
alisis aunque comenzaremos con el Filtrado Lineal,
como motivaci
on de los procesos de Medias M
oviles.
Recordemos que clasificamos las series en estacionarias, como la que estudiamos en TA-ejemplo 13.1 y que represent
abamos en la Figura 13.1, y series
no estacionarias, como las que aparecen m
as adelante en las Figuras 3.1 y 3.3
de este texto, series que pueden presentar (como le ocurre a estas dos u
ltimas)
una componente estacional.
En algunos casos, los Residuos, adem
as de ser un proceso estacionario,
tienen distribuci
on normal, denomin
andose en ese caso, Ruido Blanco.
Hay, b
asicamente, dos posibles caminos de an
alisis Box-Jenkins: uno, eliminar primero de la serie observada la Tendencia (mediante un ajuste de
regresi
on o diferenciando la serie) y, en su caso, las Variaciones Estacionales,
qued
andonos s
olo con las Variaciones Residuales para aplicar luego, a esta serie Residual, un modelo ARMA seg
un un an
alisis visual de las funciones ACF
y PACF. La segunda posibilidad es aplicar un modelo ARIMA a la serie no estacionaria o, si adem
as incluye movimientos estacionales, un modelo SARIMA
(generalizaci
on de los ARIMA) a la serie de los datos observados.
Hay que destacar que todos estos modelos SARIMA son buenos para modelizar series homoced
asticas, es decir, series en las que las varianzas se pueden
suponer constantes ( V (Yt ) = 2 en cada periodo). Si no son constantes las
varianzas, entonces debemos hacer una transformaci
on Box-Cox (CB-secci
on
14.4.2) de las observaciones hasta que sean homoced
asticas (habitualmente tomando logaritmos) para luego ajustar un modelo SARIMA a los datos transformados o, alternativamente, deberemos utilizar modelos heteroced
asticos tales
como los ARCH (Auto Regressive Conditional Heteroscedastic) o los GARCH
(Generalized ARCH), situaci
on habitual en la series financieras.
3.1.1.
C
alculo con R
La utilizaci
on de alg
un paquete estadstico en el An
alisis de Series Temporales se hace indispensable. Nosotros utilizaremos en este captulo, R. Para
ello, lo primero que tenemos que conseguir es que los datos (que recomendamos esten ya en formato ascii; tipo fichero txt) sean reconocidos como objetos
de dicho paquete estadstico para lo que deberemos utilizar la funci
on
ts(x,start,frecuency)
mediante la cual creamos un objeto que R reconoce como una serie temporal y
sobre el que podremos ejecutar las funciones creadas para dicho prop
osito. En
dicha funcion, x debe ser un vector numerico (en el caso de series temporales
univariantes) o una matriz (si estamos trabajando con series temporales multi-
63
Al f
on
so
Ga
rc
aP
ere
z.
UN
E
3.2.
Filtrado lineal
Como dijimos m
as arriba, mediante el Filtrado Lineal de una serie eliminamos sus movimientos estacionales, qued
andonos la serie libre de ellos y
mostr
andonos as, m
as claramente, su Tendencia, a la que se suman los movimientos err
aticos de las Variaciones Residuales. Para que todo esto tenga
validez, es imprescindible suponer que la serie es lineal, es decir, que las tres
componentes de la serie act
uan de forma aditiva y que cada valor observado
Yt es funci
on lineal de los valores precedentes, mediante expresiones del tipo
Yt = 0 + 1 Yt1 + 2 Yt2 + ...
Ejemplo 3.1
Los datos del fichero NoDuraderos son datos de consumo de bienes no duraderos por cuatrimestres de 34 a
nos, desde el primer cuatrimestre de 1955 hasta el cuarto cuatrimestre de
1988 en el Reino Unido (Franses, 1998). Para incorporarlos a R, ejecutaremos (1). Como se
ve, con start indicamos el a
no y el periodo de comienzo. Al indicar con frequency que el
periodo de observaci
on es cuatrimestral, la funci
on ts transforma los datos en ascii del fichero
NoDuraderos en una serie temporal en donde las observaciones se realizan cada cuatrimestre, como puede comprobarse ejecutando (2). Se puede editar este fichero NoDuraderos con
WordPad o el Bloc de Notas para ver la estructura que debe de tener un fichero de datos
que queramos crear para luego utilizarlo con R.
> serie1<-ts(scan("d:\\datos\\NoDuraderos"),start=c(1955,1),frequency=4)
> serie1
Qtr1 Qtr2 Qtr3 Qtr4
1955 24030 25620 26209 27167
1956 24620 25972 26285 27659
1957 24780 26519 26803 28200
1958 25476 26846 27302 28601
1959 26025 27998 28258 29828
1960 27346 29174 29375 30603
1961 28168 29884 30165 31260
1962 28629 30614 30717 32054
1963 29364 31783 32532 33392
1964 30599 32528 33200 34258
(1)
(2)
64
serie1
30000
40000
50000
60000
Al f
on
so
Ga
rc
aP
ere
z.
UN
E
1955
1960
1965
1970
1975
1980
1985
Time
1965
1966
1967
1968
1969
1970
1971
1972
1973
1974
1975
1976
1977
1978
1979
1980
1981
1982
1983
1984
1985
1986
31111
32013
32227
33902
33742
34149
34783
36466
39131
38729
39131
38714
38695
40777
41947
43315
42833
42552
43740
44878
46354
48527
32946
34055
34343
34838
35401
36176
37042
38680
40780
40427
40394
40062
39780
41778
44061
43396
43548
43526
45007
46234
47260
50237
33846
34244
35301
35874
36147
37485
38008
39976
41852
41576
40956
41152
40923
43160
44378
44843
44637
45039
46667
47055
48883
51592
34845
35084
36546
37315
38067
39047
40132
42273
43684
43886
42959
43460
44093
45897
47237
46835
47107
47940
49325
50318
52605
55152
1990
65
Al f
on
so
Ga
rc
aP
ere
z.
UN
E
(3)
55000
45000
25000
35000
seriedes
45000
25000
35000
seriedes
55000
Como puede verse en esta figura, la serie es claramente no estacionaria y presenta una
estacionalidad muy marcada cada a
no, como f
acilmente se desprende de observar los datos
y del tipo de datos que estamos considerando.
Uno de los primeros prop
ositos en un An
alisis de Series Temporales es la eliminaci
on de los
Movimientos Estacionales para luego tratar de conseguir una Serie Estacionaria que permita
ser descrita m
as f
acilmente. Si, pensando en el ejemplo anterior, promediamos cada a
no
creando una nueva serie en la que s
olo tengamos una observaci
on anual, la serie resultante,
l
ogicamente dejar
a de oscilar dentro de cada a
no.
1955
1965
1975
1985
aos
1955
1965
1975
1985
aos
Primero extraemos los valores observados de la serie con (4) y luego, en (5), obtenemos las
medias muestrales por filas. Si representamos ahora la serie resultante ejecutando (6), vemos
en la Figura 3.2 (izquierda) que la serie no presenta los movimientos estacionales previos.
Es m
as, podemos ajustar una recta de mnimos cuadrados y luego sobre-impresionarla, con
(7) despues de repetir (6), en la derecha del gr
afico anterior.
> b<-matrix(serie1,ncol=4,byrow=T)
> seriedes<-rowMeans(b)
> par(mfrow=c(1,2))
(4)
(5)
66
Al f
on
so
Ga
rc
aP
ere
z.
UN
E
>
>
>
>
a~
nos<-seq(1955,1988,len=34)
plot(a~
nos,seriedes,type="l")
ajuste<-lm(seriedes~a~
nos)
abline(ajuste,lty=3)
(6)
(7)
que muestra un buen ajuste, aunque parece iniciarse un aumento de las ventas al final de la
serie, quiz
as indicando un cambio de tendencia.
Esta desestacionalizaci
on de la serie ha sido muy elemental porque la serie
era excepcionalmente sencilla. Adem
as, hemos perdido observaciones (es decir,
informaci
on) al resumir en un solo dato las cuatro observaciones que de el
tenamos, lo que, aunque simplifica el problema, implica una aproximaci
on a
veces no deseable. Es bueno para estimar, como hemos hecho, la tendencia de
la serie aunque implica cometer posibles errores. Por ejemplo, parece indicar
que las ventas son siempre crecientes dentro de cada a
no.
Una soluci
on es sustituir los n datos originales por otros n que resulten
de promediar los anteriores y posteriores a cada dato original. Este metodo
se denomina Filtrado de la serie y su expresi
on m
as simple es el Filtrado
Lineal (linear filtering), siendo una clase muy importante de filtros lineales las
medias m
oviles finitas, mediante las cuales sustituimos los datos originales Yt ,
t = 1, ..., n por las sumas ponderadas,
Zt =
s
X
j=r
aj Yt+j
t = r + 1, ..., n s.
quedando la fijaci
on de las ponderaciones aj a cargo de la experiencia del
estadstico. Si es r = s el filtrado se dice simetrico.
La funci
on de R, filter proporciona el filtrado de una serie. Por defecto
considera el filtrado lineal de medias m
oviles finitas que acabamos de mencionar y, como argumento, debemos indicar en filter el vector de coeficientes
aj .
Como el lector ya habr
a pensado, todas estas medias muestrales podran
sustituirse por medianas o, en general, por medias recortadas, con objeto de
evitar datos an
omalos en un periodo promediado concreto.
Ejemplo 3.2
La serie temporal de conductores muertos (o con secuelas muy severas) en el Reino Unido,
desde Enero de 1969 hasta Diciembre de 1984 (Harvey y Durbin, 1986), puede conseguirse
ejecutando (1)
> serie2<-ts(scan("d:\\datos\\MuerteConductores"),start=c(1969,1),frequency=12)
> serie2
Jan Feb Mar Apr May Jun Jul Aug Sep Oct Nov Dec
1969 1687 1508 1507 1385 1632 1511 1559 1630 1579 1653 2152 2148
(1)
67
1000
1500
serie2
2000
2500
Al f
on
so
Ga
rc
aP
ere
z.
UN
E
1970
1975
1980
1985
Time
1970
1971
1972
1973
1974
1975
1976
1977
1978
1979
1980
1981
1982
1983
1984
1752
2030
2080
2097
1608
1577
1473
1648
1956
1813
1665
1474
1456
1494
1357
1765
1655
1768
1963
1503
1356
1655
1401
1462
1445
1361
1458
1445
1057
1165
1717
1693
1835
1677
1548
1652
1407
1411
1563
1762
1506
1542
1456
1218
1282
1558
1623
1569
1941
1382
1382
1395
1403
1459
1461
1360
1404
1365
1168
1110
1575
1805
1976
2003
1731
1519
1530
1394
1446
1556
1453
1522
1487
1236
1297
1520
1746
1853
1813
1798
1421
1309
1520
1622
1431
1522
1385
1558
1076
1185
1805
1795
1965
2012
1779
1442
1526
1528
1657
1427
1460
1641
1488
1174
1222
1800
1926
1689
1912
1887
1543
1327
1643
1638
1554
1552
1510
1684
1139
1284
1719
1619
1778
2084
2004
1656
1627
1515
1643
1645
1548
1681
1594
1427
1444
2008
1992
1976
2080
2077
1561
1748
1685
1683
1653
1827
1938
1850
1487
1575
2242
2233
2397
2118
2092
1905
1958
2000
2050
2016
1737
1868
1998
1483
1737
2478
2192
2654
2150
2051
2199
2274
2215
2262
2207
1941
1726
2079
1513
1763
La representaci
on gr
afica de esta serie de datos se obtiene ejecutando (2) y obteniendo la
Figura 3.3 en la que se observa una cierta estacionalidad (es decir, picos de periodicidad
menor a un a
no).
> plot(serie2)
(2)
Si queremos eliminar (o mejor dicho, reducir) esta estacionalidad, podemos filtrar la serie.
La serie filtrada simetrica de longitud 13 (es decir, cada dato Yt es promediado con 6 valo-
68
1000
1500
serie2
2000
2500
Al f
on
so
Ga
rc
aP
ere
z.
UN
E
1970
1975
1980
1985
Time
3.3.
(3)
(4)
Modelos ARIMA
En TA-secci
on 13.5 ya vimos c
omo ajustar un modelo ARIMA a una serie
cronol
ogica. Aqu profundizaremos en dicho an
alisis. Recordamos que podemos
clasificar las series temporales en estacionarias, es decir, en series de las que
hemos eliminado cualquier tendencia, incluso las tendencias estacionales, y en
series no estacionarias, uno de cuyos casos particulares m
as importantes es el
69
Al f
on
so
Ga
rc
aP
ere
z.
UN
E
3.3.1.
Identificaci
on del Modelo ARIMA
ser
a
t = 1, ..., n
yt1 = a0 + a1 (t 1)
y, por tanto,
yt yt1 = a1
t = 1, ..., n
y por tanto,
yt1 = a0 + a1 (t 1) + a2 (t 1)2
70
Al f
on
so
Ga
rc
aP
ere
z.
UN
E
wt = yt yt1 = (a1 a2 ) + 2 a2 t = b0 + b1 t
ser
a una serie con tendencia lineal que ser
a necesario diferenciar, es decir,
calcular sus diferencias de un retardo (de un lag) para obtener una serie con
tendencia constante. En resumen, es necesario diferenciar una vez con un retardo una serie con tendencia lineal para obtener una serie estacionaria, y
ser
a necesario diferenciar dos veces, de un retardo cada vez, una serie de tendencia cuadr
atica para obtener un serie estacionaria, es decir, una serie en
donde parece que no hay tendencia.
Escribiremos como d (yt ) el diferenciar d veces la serie yt . Es decir, 1 (yt ) =
yt yt1 , serie (con una observaci
on menos: la primera) que podemos denominar wt . Sera pues 2 (yt ) = 1 (wt ) = wt wt1 . La serie d (yt ) tendr
a nd
datos menos (los n d primeros). Y esto habiendo considerado las diferencias
de un retado, es decir, habiendo restado a cada valor de la serie el anterior. Si calculamos la diferencia con respecto al retado k lo expresaremos por
1k (yt ) = yt ytk . Por tanto, expresaremos d diferenciaciones, con respecto
al retardo k (siempre el mismo retardo) de la forma dk (yt ).
La funcion de R que calcula las diferencias es
diff(x,lag,differences)
serie11<-diff(serie1,4)
serie12<-diff(serie11)
par(mfrow=c(1,2))
plot(serie11)
plot(serie12)
(1)
(2)
71
1000
500
1500
2000
1000
1000
serie12
1000
serie11
2000
500
3000
1500
Al f
on
so
Ga
rc
aP
ere
z.
UN
E
1955
1965
1975
Time
1985
1955
1965
1975
1985
Time
(3)
(4)
Si, analizado esto, diferenciamos despues la serie13 con un retardo igual a 4 (es decir, ejecutamos (4)), ambas series serie12 y serie14 coincidiran exactamente al estar considerando
series temporales lineales ya que, seg
un la primera forma de actuar, hubieramos calculado primero la serie Wt = Yt Yt4 y luego la serie estacionaria Zt = Wt Wt1 =
Yt Yt1 Yt4 + Yt5 ; por el segundo camino comentado, calcularamos primero, la serie
Wt = Yt Yt1 y luego la serie estacionaria Zt = Wt Wt4 = Yt Yt1 Yt4 + Yt5 .
Una vez que ya intuimos el ndice d (es decir, ya tenemos la serie estacio-
72
0
4000
2000
serie13
2000
4000
Al f
on
so
Ga
rc
aP
ere
z.
UN
E
1955
1960
1965
1970
1975
1980
1985
1990
Time
naria), la representaci
on de las funciones de autocorrelaci
on y autocorrelaci
on
parcial me dir
an cu
ales son los ndices p y q del modelo ARIMA(p, d, q) a
ajustar.
Modelo ARIMA
Vamos a expresar en un modelo los conceptos anteriores. La expresi
on
general de un modelo ARMA(p, q) (estacionario) era (TA-secci
on 13.3.3)
Zt = 0 + 1 Zt1 + ... + p Ztp + et 1 et1 ... q etq .
cambiamos adem
as de signo los coeficientes de la parte MA(q), consideramos
el operador retardo L, definido por Lk (Zt ) = Ztk , y los polinomios en este
operador
73
Al f
on
so
Ga
rc
aP
ere
z.
UN
E
p (L) = 1 1 L ... p Lp
[3.1]
q (L) = 1 + 1 L + ... + q Lq
la expresi
on habitual (la que considera R) de modelo ARMA(p, q)
Zt = 1 Zt1 + ... + p Ztp + et + 1 et1 + ... + q etq
p (L)Zt = q (L)et .
p (L)d Yt = q (L)et
o tambien,
p (L)Zt = q (L)et
siendo Zt = d Yt .
Si, como ocurre en muchas ocasiones, creemos que en nuestras observaciones hay adem
as una componente estacional, como por ejemplo al tener observaciones mensuales (s = 12) y creemos que Yt no s
olo es funci
on de Yt1 , Yt2 , ...,
sino tambien de Yt12 y, quiz
a, Yt24 , deberemos incorporar esta componente
estacional a nuestro modelo anterior. Box y Jenkins (1970) generalizaron el
modelo ARIMA anterior para incluir la componente estacional en todas las
otras componentes AR, MA y Tendencia, definiendo un modelo ARIMA estacional multiplicativo (abreviado por SARIMA), de orden (p, d, q) (P, D, Q)s ,
como
74
Al f
on
so
Ga
rc
aP
ere
z.
UN
E
[3.2]
siendo Zt = d D
s Yt un proceso estacionario y en donde aparecen los siguientes polinomios asociados (la segunda igualdad es para indicar la denominaci
on
de R):
p (L) = 1 1 L ... p Lp = 1 ar1 L ... arp Lp
Q (Ls ) = 1 + b1 L12
y la ecuaci
on [3.2]
3.3.2.
Estimaci
on de los par
ametros
La funci
on de R, arima nos dar
a las estimaciones de los coeficientes, una
vez le indiquemos el orden del modelo SARIMA (o ARIMA) a ajustar. Sus
argumentos son
75
Al f
on
so
Ga
rc
aP
ere
z.
UN
E
arima(x,order=c(p,d,q),seasonal=list(order=c(P,D,Q),period=s),include.mean=T)
en donde x ser
a la serie de datos originales, y los par
ametros que se indican
en los otros dos argumentos corresponden con los del modelo a ajustar. Por
defecto ajusta el modelo a los datos menos la media, Yt , es decir, no
suministrara termino independiente. Si se desea, hay que utilizar el argumento
include.mean=F. Observese que cuando sea d + D 1 se obtendr
a el mismo
resultado tanto si se considera la media como si no porque, al diferenciar, esta
se cancelara.
La representaci
on gr
afica de las funciones ACF y PACF nos permiten intuir, respectivamente, el orden q y p del modelo ARMA(p, q): si despues del
primer retardo, hay q valores fuera de las lneas de confianza en la funci
on
ACF, y si hay p fuera de las lneas de confianza de la funci
on PACF, tal y
como vimos en TA. Si al ejecutar esta funci
on con un ndice d = 1 e incluyendo
ordenes en la parte estacional, R no nos calcula las estimaciones y nos da el
> library(forecast)
> auto.arima(serie1)
Series: serie1
ARIMA(1,1,1)(0,0,2)[4] with drift
Call: auto.arima(x = serie1)
Coefficients:
ar1
ma1
0.2031 -0.7933
s.e. 0.1250
0.0748
sma1
0.9878
0.0670
sma2
0.6881
0.0660
drift
251.5359
54.9355
76
Al f
on
so
Ga
rc
aP
ere
z.
UN
E
que sugiere un modelo SARIMA de orden (1, 1, 1) (0, 0, 2)4 con los coeficientes all mencionados. Los polinomios asociados ser
an, por tanto,
p (L) = 1 0 2031 L
P (L4 ) = 1
q (L) = 1 0 7933L
Yt = 1 2031 Yt1 0 2031 Yt2 +et 0 7933 et1 +0 9878 et4 0 7836 et5 +0 6881 et8 0 5459 et9
Si la funci
on auto.arima nos sugiere un modelo de
ordenes elevados, conviene probar si un modelo m
as sencillo no baja mucho la verosimilitud (o
sube mucho el AIC) para quedarnos con este modelo m
as sencillo; el ndice de
diferenciaci
on, seguramente no habr
a que modificarlo.
3.3.3.
Diagnosis
77
Al f
on
so
Ga
rc
aP
ere
z.
UN
E
Standardized Residuals
1955
1960
1965
1970
1975
1980
1985
1990
Time
ACF
0.2 0.4
1.0
ACF of Residuals
Lag
p value
10
lag
Figura 3.7 : Gr
aficos diagn
osticos para el Ejemplo 3.1
> resul1<-auto.arima(serie1)
> tsdiag(resul1)
(1)
(2)
Esta situaci
on es habitual en el ajuste de series temporales. Habitualmente un modelo no
se ajustar
a muy bien a una serie muy larga. Es necesario hacer ajustes por periodos de
78
Al f
on
so
Ga
rc
aP
ere
z.
UN
E
tiempo, siendo especialmente interesante obtener un buen ajuste para el periodo final si
queremos hacer predicciones. As, si hacemos un an
alisis m
as detallado de la u
ltima parte
de la serie1, que podemos extraer de la serie completa con (3) y le ajustamos un modelo
SARIMA con (4), ya vemos en (5) y (6) que el modelo SARIMA de orden (2, 1, 2)(1, 0, 0)4 ,
con los coeficientes que aparecen en (7), proporciona mayor verosimilitud y menor AIC que
el ajustado anteriormente.
> seriefinal<-window(serie1, start=c(1978,1))
> library(forecast)
> resul2<-auto.arima(seriefinal)
> resul2
Series: seriefinal
ARIMA(2,1,2)(1,0,0)[4] with drift
(3)
(4)
ar2
-0.9138
0.1072
ma1
1.3393
0.2129
ma2
0.5982
0.2130
sar1
0.9903
0.0077
drift
580.3124
1520.2268
(7)
(5)
(6)
(8)
La Figura 3.8, obtenida ejecutando (8), muestra que el ajuste analizado como antes mediante el test de Ljung-Box es adecuado, como puede verse al observar para los 10 retardos
analizados, un p-valor significativamente mayor que 0 1.
El modelo ajustado es, por tanto el siguiente: los polinomios asociados ser
an,
p (L) = 1 + 1 545 L + 0 9138 L2
P (L4 ) = 1 0 9903 L4
Yt = 0 545 Yt1 + 0 6312 Yt2 + 0 9138 Yt3 + 0 9903 Yt4 + 0 5397 Yt5 0 6251 Yt6
0 9049 Yt7 + et + 1 3393 et1 + 0 5982 et2
79
Al f
on
so
Ga
rc
aP
ere
z.
UN
E
Standardized Residuals
1978
1980
1982
1984
1986
1988
Time
ACF
0.2 0.4
1.0
ACF of Residuals
Lag
p value
10
lag
Figura 3.8 : Gr
aficos diagn
osticos para el Ejemplo 3.1
3.3.4.
Predicci
on
80
Al f
on
so
Ga
rc
aP
ere
z.
UN
E
Si queremos utilizar predict con la serie ajustada con auto.arima ejecutaramos (1) obteniendo los problemas que aparecen despues de ejecutar esta sentencia. Pasamos, por tanto,
a reajustar la serie con arima para el orden ya conocido, pero al ejecutar inicialmente arima
obtenemos errores por lo que diferenciamos eliminando el valor d = 1. Vemos, por fin, que
los coeficientes as estimados son pr
acticamente los mismos que obtuvimos m
as arriba con
la funci
on auto.arima
> predict(resul2)
Error en dim(data) <- dim : se intenta especificar un atributo en un NULL
(1)
> resul3<-arima(seriefinal,order=c(2,1,2),seasonal=list(order=c(1,0,0),period=4))
Error arima(seriefinal,order=c(2, 1, 2),seasonal=list(order=c(1, :non-stationary
seasonal AR part from CSS
> resul3<-arima(diff(seriefinal),order=c(2,0,2),seasonal=list(order=c(1,0,0),period=4))
> resul3
Series: diff(seriefinal)
ARIMA(2,0,2)(1,0,0)[4] with non-zero mean
ar2
-0.9132
0.1078
ma1
1.3386
0.2133
> predict(resul3,n.ahead=2*4)
$pred
ma2
0.5970
0.2133
sar1
0.9902
0.0077
intercept
596.4397
1518.6165
(2)
Qtr1
1989 -4827.372
1990 -4767.439
$se
81
Al f
on
so
Ga
rc
aP
ere
z.
UN
E
Qtr3
2266.592
2328.489
Qtr4
4141.662
4036.291
(3)
Qtr1
Qtr2
Qtr3
Qtr4
1989 510.2747 520.9945 520.9956 529.4738
1990 639.4553 640.4883 645.7074 652.4197
Ahora obtenemos las predicciones finalmente ejecutando (2). Pero observese que se obtienen
las predicciones para la serie diferenciada. Es decir, en (3) obtenemos que es, por ejemplo,
Z19891 = 4827 372 ; es decir, que es Y19891 Y19884 = 4827 372 , o bien,
Y19891 = Y19884 4827 372 = 61978 4827 372 = 57150 628
que sera el valor que se obtendra analticamente con el modelo ajustado por la funci
on
arima, de la misma manera a como hicimos m
as arriba.
3.3.5.
(1)
82
Al f
on
so
Ga
rc
aP
ere
z.
UN
E
data: serie12
Dickey-Fuller = -13.2695, Truncation lag parameter = 4, p-value = 0.01
(2)
3.3.6.
Ejemplos
83
Al f
on
so
Ga
rc
aP
ere
z.
UN
E
Ejemplo 3.3
Los siguientes datos (Diggle, 1990) corresponden, respectivamente, a Hombres y Mujeres
fallecidos mensualmente por enfermedades comunes de la garganta (bronquitis, enfisema y
asma) en el Reino Unido desde 1974 a 1979. La serie31 corresponde a los Hombres y la
serie32 a las Mujeres.
> serie31<-ts(scan("d:\\datos\\MUERTESGargantaHOMBRES"),start=c(1974,1),frequency=12)
> serie32<-ts(scan("d:\\datos\\MUERTESGargantaMUJERES"),start=c(1974,1),frequency=12)
La serie suma de ambas ser
a la siguiente,
> serie3<-serie31+serie32
> serie3
Jan Feb Mar Apr May
1974 3035 2552 2704 2554 2014
1975 2933 2889 2938 2497 1870
1976 2787 3891 3179 2011 1636
1977 3102 2294 2385 2444 1748
1978 2815 3137 2679 1969 1870
1979 3084 2605 2573 2143 1693
Jun
1655
1726
1580
1554
1633
1504
Jul
1721
1607
1489
1498
1529
1461
Aug
1524
1545
1300
1361
1366
1354
Sep
1596
1396
1356
1346
1357
1333
Oct
2074
1787
1653
1564
1570
1492
Nov
2199
2076
2013
1640
1535
1781
Dec
2512
2837
2823
2293
2491
1915
muertes<-stl(serie3,"periodic")
residual<-muertes$time.series[,3]
par(mfrow=c(1,2))
plot(serie3)
hist(residual)
En el gr
afico de la izquierda parece apreciarse homocedasticidad en los datos. En el de la
derecha parece que los residuos pueden considerarse normales. Para confirmar esta normalidad ejecutamos el test de Kolmogorov-Smirnov (vease EAR). El p-valor del test, dado en
(1), de valor 0 4858, es lo suficientemente grande como para aceptar la normalidad de los
residuos.
> ks.test(residual,"pnorm",mean(residual),sd(residual))
One-sample Kolmogorov-Smirnov test
data: residual
D = 0.0964, p-value = 0.4858
alternative hypothesis: two-sided
(1)
Para evitar tener que realizar los pasos 5) a 8), podemos ejecutar (2) y (3), observando en
la Figura 3.10 que los p-valores del test de Ljung-Box son lo suficientemente grandes como
para aceptar el modelo SARIMA de orden (2, 0, 0) (2, 0, 0)12 obtenido.
84
Al f
on
so
Ga
rc
aP
ere
z.
UN
E
25
20
15
0
1500
10
Frequency
2500
2000
serie3
3000
3500
30
Histogram of residual
1974
1976
1978
1980
500
Time
500
1000
residual
> library(forecast)
> resul3<-auto.arima(serie3)
> resul3
Series: serie3
ARIMA(2,0,0)(2,0,0)[12] with non-zero mean
(2)
sar1
0.2956
0.1038
sar2
0.5243
0.1013
intercept
2062.7889
148.7027
(3)
85
Al f
on
so
Ga
rc
aP
ere
z.
UN
E
Standardized Residuals
1974
1975
1976
1977
1978
1979
1980
Time
0.4
0.2
ACF
1.0
ACF of Residuals
0.0
0.5
1.0
1.5
Lag
p value
10
lag
Figura 3.10 : Gr
aficos de diagn
ostico para el Ejemplo 3.3
Q (Ls ) = 1
y la ecuaci
on [3.2]
Si queremos predecir, por ejemplo, los fallecidos que se estiman en Enero de 1980, observando
los valores de los retardos en la serie3, ser
an
Y19801 = 241 9651 + 0 5388 1915 0 1903 1781 + 0 2956 3084 0 1593 2491 + 0 0563 1535+
+0 5243 2815 0 2825 2293 + 0 0998 1640 = 2527 881
86
Al f
on
so
Ga
rc
aP
ere
z.
UN
E
> predict(resul3,n.ahead=2*12)
$pred
Jan
Feb
Mar
1980 2527.899 2736.875 2554.025
1981 2735.635 2546.277 2475.459
Sep
Oct
Nov
1980 1476.943 1635.797 1702.863
1981 1507.039 1637.346 1808.679
$se
Mar
315.5808
329.6141
Nov
316.1447
329.6613
Apr
May
Jun
Jul
Aug
2056.079 1859.218 1672.406 1603.838 1487.315
2102.857 1808.757 1654.458 1611.649 1521.113
Dec
2243.621
2038.756
Apr
May
Jun
Jul
Aug
315.8676 316.1155 316.1431 316.1432 316.1443
329.6381 329.6588 329.6612 329.6612 329.6613
Dec
316.1447
329.6613
serie3
1500
2000
2500
3000
3500
Jan
Feb
1980 276.7539 314.3647
1981 326.5521 329.5125
Sep
Oct
1980 316.1447 316.1447
1981 329.6613 329.6613
(4)
1974
1976
1978
1980
1982
Time
(5)
(6)
87
Al f
on
so
Ga
rc
aP
ere
z.
UN
E
Ejemplo 3.4
Unos datos que contiene R con el nombre nottem, son las temperaturas medias mensuales
en Nottingham Castle (Nottingham, Inglaterra) en grados Fahrenheit desde Enero de 1920
hasta Diciembre de 1939.
> nottem
Jan
1920 40.6
1921 44.2
1922 37.5
1923 41.8
1924 39.3
1925 40.0
1926 39.2
1927 39.4
1928 40.8
1929 34.8
1930 41.6
1931 37.1
1932 42.4
1933 36.2
1934 39.4
1935 40.0
1936 37.3
1937 40.8
1938 42.1
1939 39.4
Feb
40.8
39.8
38.7
40.1
37.5
40.5
43.4
38.5
41.1
31.3
37.1
38.4
38.4
39.3
38.2
42.6
35.0
41.0
41.2
40.9
Mar
44.4
45.1
39.5
42.9
38.3
40.8
43.4
45.3
42.8
41.0
41.2
38.4
40.3
44.5
40.4
43.5
44.0
38.4
47.3
42.4
Apr
46.7
47.0
42.1
45.8
45.5
45.1
48.9
47.1
47.3
43.9
46.9
46.5
44.6
48.7
46.9
47.1
43.9
47.4
46.6
47.8
May
54.1
54.1
55.7
49.2
53.2
53.8
50.6
51.7
50.9
53.1
51.2
53.5
50.9
54.2
53.4
50.0
52.7
54.1
52.4
52.4
Jun
58.5
58.7
57.8
52.7
57.7
59.4
56.8
55.0
56.4
56.9
60.4
58.4
57.0
60.8
59.6
60.5
58.6
58.6
59.0
58.0
Jul
57.7
66.3
56.8
64.2
60.8
63.5
62.5
60.4
62.2
62.5
60.1
60.6
62.1
65.5
66.5
64.6
60.0
61.4
59.6
60.7
Aug
56.4
59.9
54.3
59.6
58.2
61.0
62.0
60.5
60.5
60.3
61.6
58.2
63.5
64.9
60.4
64.0
61.1
61.8
60.4
61.8
Sep
54.3
57.0
54.3
54.4
56.4
53.0
57.5
54.7
55.4
59.8
57.0
53.8
56.3
60.1
59.2
56.8
58.1
56.3
57.0
58.2
Oct
50.5
54.2
47.1
49.2
49.8
50.0
46.7
50.3
50.2
49.2
50.9
46.6
47.3
50.2
51.2
48.6
49.6
50.9
50.7
46.7
Nov
42.9
39.7
41.8
36.3
44.4
38.1
41.6
42.3
43.0
42.9
43.0
45.5
43.6
42.1
42.8
44.2
41.6
41.4
47.8
46.6
Dec
39.8
42.8
41.7
37.6
43.6
36.3
39.8
35.2
37.3
41.9
38.8
40.6
41.8
35.8
45.8
36.4
41.3
37.1
39.2
37.8
Vamos a utilizar la serie desde 1920 hasta 1936 para predecir los tres u
ltimos a
nos y compararlos con los observados. Para ello, primero los extraemos ejecutando (1). Con (2) y (3)
extraemos las Variaciones Residuales.
>
>
>
>
>
>
serie4<-window(nottem, end=c(1936,12))
temperaturas<-stl(serie4,"periodic")
residual<-temperaturas$time.series[,3]
par(mfrow=c(1,2))
plot(serie4)
hist(residual)
> ks.test(residual,"pnorm",mean(residual),sd(residual))
(1)
(2)
(3)
(4)
(5)
(6)
La representaci
on gr
afica de la serie, obtenida ejecutando (4) y que aparece a la izquierda
de la Figura 3.12, muestra claramente un serie estacional (como era de esperar por el tipo
88
Al f
on
so
Ga
rc
aP
ere
z.
UN
E
40
20
0
10
Frequency
50
30
35
40
45
serie4
55
30
60
65
Histogram of residual
1920
1925
1930
1935
Time
residual
> boxplot(split(serie4,cycle(serie4)),names=month.abb)
Podemos pasar, por tanto, a ajustar y analizar un modelo SARIMA para los datos. Para ello
ejecutamos (8) y (9).
> library(forecast)
> resul4<-auto.arima(serie4)
> resul4
Series: serie4
(8)
89
30
35
40
45
50
55
60
65
Al f
on
so
Ga
rc
aP
ere
z.
UN
E
Jan
Feb
Mar
Apr
May
Jun
Jul
Aug
Sep
Oct
Nov
Dec
Figura 3.13 : Gr
aficos de dispersi
on de la Serie del Ejemplo 3.4
sar2
0.6638
0.0528
intercept
49.2636
2.4656
(9)
Q (Ls ) = 1
y la ecuaci
on [3.2]
90
Al f
on
so
Ga
rc
aP
ere
z.
UN
E
Standardized Residuals
1920
1925
1930
1935
Time
0.6
0.0
ACF
ACF of Residuals
0.0
0.5
1.0
1.5
Lag
p value
10
lag
Figura 3.14 : Gr
aficos de diagn
ostico del Ejemplo 3.4
Yt = 1 6405 + 0 3796 Yt1 + 0 2826 Yt12 0 1073 Yt13 + 0 6638 Yt24 0 252 Yt25 + et .
Si queremos predecir con este modelo ajustado, por ejemplo, las temperaturas en Enero de
1937, observando los valores de los retardos en la serie4, ser
a
Y19371 = 1 6405 + 0 3796 41 3 + 0 2826 37 3 0 1073 36 4 + 0 6638 40 0 252 45 8 = 38 96
Como en el ejemplo anterior, es m
as sencillo utilizar la funci
on predict. Para obtener las
predicciones de los tres a
nos no considerados al comienzo del ejemplo, ejecutamos (10).
(Observese c
omo obtenemos la misma predicci
on que la calculada analticamente.)
La obtenci
on del gr
afico de la serie completa observada y la sobre-impresi
on de la estimada
en los tres u
ltimos a
nos (Figura 3.15) la obtenemos ejecutando (11) y (12), apreci
andose
un buen ajuste.
> predict(resul4,n.ahead=3*12)$pred
(10)
91
50
30
35
40
45
nottem
55
60
65
Al f
on
so
Ga
rc
aP
ere
z.
UN
E
1920
1925
1930
1935
1940
Time
Jan
Feb
Mar
1937 38.96297 40.51673 43.83906
1938 38.41083 37.32316 44.23648
1939 39.35871 40.08274 44.24196
Sep
Oct
Nov
1937 56.76335 48.91803 43.73641
1938 57.24890 49.38925 42.61430
1939 56.49883 49.06972 43.71537
Apr
May
Jun
Jul
Aug
46.26941 50.70761 59.35506 62.47614 62.39015
44.85694 51.95285 58.31326 60.12466 60.83056
46.03062 50.98218 58.52005 61.10382 61.24623
Dec
38.47386
40.92789
39.74538
> plot(nottem)
> lines(predict(resul4,n.ahead=3*12)$pred,col=2,lwd=2)
3.4.
(11)
(12)
Cointegraci
on
Al f
on
so
Ga
rc
aP
ere
z.
UN
E
92
en donde x debe ser una serie multivariante; es decir, un objeto creado por la
funci
on ts, en donde haya al menos dos series univariantes.
Aunque el concepto de dependencia/independencia es recproco, de hecho,
el test de Phillips y Ouliaris supone un regresi
on de la primera serie del vector
x (consider
andola dependiente) sobre el resto de las series del vector de series.
Ejemplo 3.3 (continuaci
on)
Primero vamos a crear la serie bidimensional MuertesGarganta cuyas componentes son las
series unidimensionales correspondientes a los hombres y mujeres ejecutando la siguiente
secuencia de instrucciones,
> nueva<-matrix(c(serie31,serie32),ncol=2)
> MuertesGarganta<-ts(nueva,start=c(1974,1),frequency=12)
> MuertesGarganta
Series 1 Series 2
Jan 1974
2134
901
Feb 1974
1863
689
Mar 1974
1877
827
Apr 1974
1877
677
May 1974
1492
522
Jun 1974
1249
406
Jul 1974
1280
441
Aug 1974
1131
393
Sep 1974
1209
387
Oct 1974
1492
582
Nov 1974
1621
578
Dec 1974
1846
666
Jan 1975
2103
830
Feb 1975
2137
752
Mar 1975
2153
785
Apr 1975
1833
664
May 1975
1403
467
Jun 1975
1288
438
Jul 1975
1186
421
Aug 1975
1133
412
Sep 1975
1053
343
Oct 1975
1347
440
Nov
Dec
Jan
Feb
Mar
Apr
May
Jun
Jul
Aug
Sep
Oct
Nov
Dec
Jan
Feb
Mar
Apr
May
Jun
Jul
Aug
Sep
Oct
Nov
Dec
Jan
Feb
Mar
Apr
May
Jun
Jul
Aug
Sep
Oct
Nov
Dec
Jan
Feb
Mar
Apr
May
Jun
Jul
Aug
Sep
Oct
Nov
Dec
1975
1975
1976
1976
1976
1976
1976
1976
1976
1976
1976
1976
1976
1976
1977
1977
1977
1977
1977
1977
1977
1977
1977
1977
1977
1977
1978
1978
1978
1978
1978
1978
1978
1978
1978
1978
1978
1978
1979
1979
1979
1979
1979
1979
1979
1979
1979
1979
1979
1979
93
Al f
on
so
Ga
rc
aP
ere
z.
UN
E
531
771
767
1141
896
532
447
420
376
330
357
445
546
764
862
660
663
643
502
392
411
348
387
385
411
638
796
853
737
546
530
446
431
362
387
430
425
679
821
785
727
612
478
429
405
379
393
411
487
574
94
Al f
on
so
Ga
rc
aP
ere
z.
UN
E
entre las series de muertes por enfermedades de garganta de hombres y mujeres, es decir,
de la hip
otesis nula H0 : No existe dependencia entre las series de muertes por enfermedades
de garganta de hombres y mujeres, se realiza ejecutando (1), despues de abrir la librera
tseries. En (2) se observa un p-valor muy peque
no (de hecho nos dice que es incluso
menor), lo que indica rechazar la hip
otesis nula de que no hay dependencia y concluir con la
alternativa de que s hay dependencia.
> library(tseries)
> po.test(MuertesGarganta)
(1)
data: MuertesGarganta
Phillips-Ouliaris demeaned = -58.9757, Truncation lag parameter = 0,
p-value = 0.01
(2)
Warning message:
In po.test(MuertesGarganta) : p-value smaller than printed p-value
Como dijimos m
as arriba, este test no trata ambas series de igual manera por lo que deberamos contrastar tambien si es significativa la regresi
on de la segunda serie sobre la
primera, ejecutando (3). El p-valor obtenido en (4) confirma la conclusi
on anterior.
> po.test(MuertesGarganta[,2:1])
(3)
(4)
Warning message:
In po.test(MuertesGarganta[, 2:1]) : p-value smaller than printed p-value
3.5.
95
Al f
on
so
Ga
rc
aP
ere
z.
UN
E
Yt = t et
2
2
t2 = 0 + 1 Yt1
+ ... + p Ytp
.
Una generalizaci
on de esta clase de modelos son los modelos GARCH(p, q)
(debidos a Bollerslev, 1986 y Taylor, 1986) en donde se supone que es
Yt = t et
t2 = 0 +
p
X
i=1
2
i Yti
+
q
X
2
j tj
.
j=1
P
Estos modelos son estacionarios si 0 > 0 y
i + j 1.
Entre ellos, el m
as popular es el modelo GARCH(1,1) con errores normales,
es decir, una serie en donde
Yt = t et
et ; N (0, 1)
i.i.d.
2
2
t2 = 0 + 1 Yt1
+ 1 t1
con 0 , 1 > 0, 1 0.
Ejemplo 3.5
En Bollerslev y Ghysels (1996) aparecen los datos de la tasa de cambio entre el Marco alem
an
y la Libra esterlina desde 3 de Enero de 1984 hasta el 31 de Diciembre de 1991. Estos datos
pueden incorporarse a R ejecutando (1)
> MarcoLibra<-ts(scan("d:\\datos\\MarcoLibra"))
(1)
Si tratamos de ajustar un modelo ARIMA a estos datos ejecutando (2), vemos que el resultado es un ARIMA(0,0,0), es decir, un ruido blanco y adem
as, ejecutando (3), que el test
de Ljung-Box lo confirma como vemos en el tercer gr
afico de la Figura 3.16.
> library(forecast)
> resul5<-auto.arima(MarcoLibra)
> resul5
Series: MarcoLibra
ARIMA(0,0,0) with non-zero mean
(2)
96
Al f
on
so
Ga
rc
aP
ere
z.
UN
E
Standardized Residuals
500
1000
1500
2000
Time
0.6
0.0
ACF
ACF of Residuals
10
15
20
25
30
Lag
p value
10
lag
Figura 3.16 : An
alisis del ajuste en el Ejemplo 3.5
s.e.
intercept
-0.0164
0.0106
(3)
garch(x,order=c(1,1),grad,trace)
97
Al f
on
so
Ga
rc
aP
ere
z.
UN
E
10
20
Standardized Residuals
500
1000
1500
2000
Time
0.6
0.0
ACF
ACF of Residuals
10
15
20
25
30
Lag
p value
10
20
30
40
50
lag
Figura 3.17 : An
alisis del ajuste de los cuadrados del Ejemplo 3.5
98
Al f
on
so
Ga
rc
aP
ere
z.
UN
E
con
2
2
t2 = 0 010867 + 0 154604 Yt1
+ 0 80442 t1
es adecuado.
> summary(garch(MarcoLibra,grad="numerical",trace=F))
(1)
Call:
garch(x = MarcoLibra, grad = "numerical", trace = F)
Model:
GARCH(1,1)
Residuals:
Min
1Q
Median
-6.797391 -0.537032 -0.002637
3Q
0.552327
Max
5.248671
Coefficient(s):
Estimate Std. Error t value Pr(>|t|)
a0 0.010867
0.001297
8.376
<2e-16 ***
a1 0.154604
0.013882
11.137
<2e-16 ***
b1 0.804420
0.016046
50.133
<2e-16 ***
--Signif. codes: 0 *** 0.001 ** 0.01 * 0.05 . 0.1 1
(2)
Diagnostic Tests:
Jarque Bera Test
data: Residuals
X-squared = 1060.012, df = 2, p-value < 2.2e-16
(4)
Box-Ljung test
data: Squared.Residuals
X-squared = 2.4776, df = 1, p-value = 0.1155
(3)
El test de Box-Ljung de p-valor 0 1155, dado en (3), sugiere que se puede aceptar la independencia de los residuos et . No obstante, la normalidad de estos es rechazada en (4) con
el test de Jarque-Bera.
99
Al f
on
so
Ga
rc
aP
ere
z.
UN
E
funciones de R que nos permitan probar con otras distribuciones para los
residuos. En concreto, podemos utilizar la funci
on del m
odulo fGrach
garchFit(formula,x,skew=1,shape=4,cond.dist="norm",trace)
en donde x ser
a la serie temporal a ajustar. En formula debemos especificar
el modelo GARCH(p, q) a ajustar mediante la sentencia
formula=~garch(p,q)
> summary(garchFit(formula=~garch(1,1),MarcoLibra,cond.dist="norm",trace=F))
100
Al f
on
so
Ga
rc
aP
ere
z.
UN
E
3.6.
0.0
0.4
0.2
temp
0.2
0.4
> temp<-ts(scan("d:\\datos\\globtemp.dat"),start=1856,frequency=1)
> plot(temp)
1860
1880
1900
1920
1940
1960
1980
2000
Time
Yt = t + et
siendo t = a+b t la tendencia lineal y et una serie estacionaria, podemos conseguir una serie
estacionaria restando a los valores observados la tendencia estimada por mnimos cuadrados
obteniendo as lo que se denomina una serie sin tendencia detrended,
101
Al f
on
so
Ga
rc
aP
ere
z.
UN
E
Yt t
La ecuaci
on de la Tendencia se obtiene ejecutando
> tendencia
Call:
lm(formula = temp ~ tiempos)
0.3
0.2
0.1
0.0
0.1
0.2
0.3
tiempos
0.004168
W_t2
0.0
0.1
0.2
0.3
0.4
W_t1
0.1
0.2
0.3
Coefficients:
(Intercept)
-8.187096
1860
1900
1940
Time
1980
1860
1900
1940
Time
1980
102
Al f
on
so
Ga
rc
aP
ere
z.
UN
E
de representaci
on la parte izquierda de la Figura 3.19, que no parece una serie muy estacionaria.
Si por contra diferenciamos la serie dada calculando la serie diferenciada
Wt2 = Yt Yt1
de representaci
on la parte derecha de la Figura 3.19, tenemos lo que s parece una serie
estacionaria. La Figura 3.19 la obtenemos ejecutando
> par(mfrow=c(1,2))
> plot(W_t1)
> plot(W_t2)
vemos en la gr
afica de la izquierda que la serie Wt1 no es estacionaria porque, despues del
primer retardo, que siempre es igual a 1, necesitamos 11 retardos para estar dentro de las
bandas de confianza, mientras que la gr
afica de la derecha s que sugiere que es estacionaria
y que parece adecuado un modelo MA(2) pues est
a entre los lmites de confianza despues de
dos retardos.
Si, representamos la funci
on de autocorrelaci
on parcial PACF de la serie Wt2 (Figura 3.21)
ejecutando
> pacf(W_t2)
esta parece indicarnos un modelo AR(3) pues necesita 4 retardos para estar dentro de las
bandas de confianza.
Por u
ltimo, si ejecutamos
> library(forecast)
> result<-auto.arima(temp)
> result
Series: temp
ARIMA(2,1,1) with drift
103
Al f
on
so
Ga
rc
aP
ere
z.
UN
E
0.2
0.0
0.2
0.4
0.6
0.8
1.0
Series W_t2
ACF
0.4
0.2
0.0
0.2
ACF
0.6
0.8
1.0
Series W_t1
10
15
20
Lag
10
15
20
Lag
ma1
-0.7433
0.0940
drift
0.0051
0.0027
ar2
-0.2796
0.0817
104
Al f
on
so
Ga
rc
aP
ere
z.
UN
E
0.0
0.1
0.3
0.2
Partial ACF
0.1
Series W_t2
10
15
20
Lag
ma1
-0.7610
0.5943
ma2
0.3026
0.4253
ma3
-0.1591
0.1926
Las verosimilitudes y valores AIC de los tres modelos ARIMA(2,1,0) (log-verosimi = 107 07,
AIC=208 14), ARIMA(2,1,3) (log-verosimi = 114 66, AIC=217 32) y ARIMA(2,1,1) (logverosimi = 115 61, AIC=221 23) sugieren el modelo ARIMA(2,1,1). Adem
as, el test de
Ljung-Box, ejecutado con
> tsdiag(result)
muestra en la tercera gr
afica de la Figura 3.22 que el ajuste de este modelo es adecuado, al
estar la lnea de p-valores muy cerca de 1.
El modelo ajustado tiene, por tanto, los siguientes polinomios asociados,
p (L) = 1 0 3096 L + 0 1771 L2
105
Al f
on
so
Ga
rc
aP
ere
z.
UN
E
Standardized Residuals
1860
1880
1900
1920
1940
1960
1980
2000
Time
0.4
0.2
ACF
1.0
ACF of Residuals
10
15
20
Lag
p value
10
lag
P (Ls ) = 1
q (L) = 1 0 7433L
Q (Ls ) = 1
Ejemplo 3.7
Los datos recogidos por Shumway y Verosub (1992), y que est
an en el fichero sediglaci,
corresponden al espesor de capas de sedimento depositadas por glaciares cerca de Massachusetts en los meses de deshielo de 634 a
nos, desde el a
no -9835 al a
no -9202. Este tipo
de datos aporta mucha informaci
on paleoclim
atica sobre otras variables muy relacionadas,
tales como la temperatura de la epoca porque, en un a
no c
alido, se deposita m
as tierra y
cieno en el fondo del glaciar y, como la disminuci
on del espesor implica una mayor cantidad
de dep
ositos, un aumento de las capas de sedimento en un momento temporal implica un
aumento de la temperatura en esa epoca.
Primero incorporaremos los datos a R ejecutando (1). Como el periodo (frequency) de los
valores de la serie es 1, no hace falta utilizar la funci
on stl para analizar la normalidad de los
residuos. Su gr
afica, obtenida ejecutando (2) y que aparece en el lado izquierdo de la Figura
106
Al f
on
so
Ga
rc
aP
ere
z.
UN
E
3.23 muestra claramente una falta de normalidad. El histograma de los datos transformados
por logaritmos, obtenidos ejecutando (3), s parece indicar normalidad.
0.1
0.0
0.000
0.005
0.2
0.3
0.4
0.5
0.6
Histogram of log(espesor)
Density
0.010
Density
0.015
0.020
Histogram of espesor
50
100
150
espesor
log(espesor)
Figura 3.23 : Histogramas para los datos y los logaritmos de los datos
>
>
>
>
espesor<-ts(scan("d:\\datos\\sediglaci.dat"),start=-9835,frequency=1)
par(mfrow=c(1,2))
hist(espesor,prob=T)
hist(log(espesor),prob=T)
(1)
(2)
(3)
Ahora, lo m
as simple es ajustar un modelo arima ejecutando (4), lo que nos sugiere en (5)
un modelo ARIMA(1,1,1).
> library(forecast)
> auto.arima(log(espesor))
Series: log(espesor)
ARIMA(1,1,1)
(4)
(5)
107
Al f
on
so
Ga
rc
aP
ere
z.
UN
E
0
1
diff(log(espesor))
3
2
log(espesor)
9800
9600
9400
9200
9800
9600
Time
9400
9200
Time
> par(mfrow=c(1,2))
> plot(log(espesor))
> plot(diff(log(espesor)))
(6)
(7)
ACF
PACF
AR(p)
No decrece
Decrece a cero
despues de p retardos
MA(q)
Decrece a cero
despues de q retardos
No decrece
ARMA(p, q)
No decrece
No decrece
la representaci
on de las funciones de correlaci
on parcial y auto-correlaci
on parcial de la serie
diferenciada, obtenidas ejecutando la siguiente secuencia, la cual da como resultado la Figura
3.25 parece indicarnos un modelo ARMA(0,1,1).
108
Al f
on
so
Ga
rc
aP
ere
z.
UN
E
> par(mfrow=c(1,2))
> acf(diff(log(espesor)))
> pacf(diff(log(espesor)))
0.4
0.3
0.2
0.1
0.0
Series diff(log(espesor))
Partial ACF
0.4
0.2
0.4
0.2
0.0
ACF
0.6
0.8
1.0
Series diff(log(espesor))
10
15
20
25
10
Lag
15
20
25
Lag
vemos que apenas se reduce el logaritmo de la verosimilitud, que pasa de 431 44 a 440 88 o
que tampoco aumenta mucho el AIC, que pasa de 868 88 a 885 44. No obstante, si realizamos
la diagnosis de ambos modelos ejecutando la funci
on tsdiag, vemos en la Figura 3.26 que el
modelo ARIMA(0,1,1) no pasa el test de Ljung-Box, mientras que el modelo ARIMA(1,1,1)
s lo pasa, seg
un el gr
afico de la Figura 3.27.
109
Al f
on
so
Ga
rc
aP
ere
z.
UN
E
Standardized Residuals
9800
9700
9600
9500
9400
9300
9200
Time
0.6
0.0
ACF
ACF of Residuals
10
15
20
25
Lag
p value
10
lag
>
>
>
>
resultado1<-arima(log(espesor),order=c(0,1,1))
resultado2<-arima(log(espesor),order=c(1,1,1))
tsdiag(resultado1)
tsdiag(resultado2)
Nos queramos, por tanto, con el modelo ARIMA(1,1,1), con polinomios asociados
p (L) = 1 0 233 L
P (Ls ) = 1
q (L) = 1 0 8858 L
Q (Ls ) = 1
110
Al f
on
so
Ga
rc
aP
ere
z.
UN
E
Standardized Residuals
9800
9700
9600
9500
9400
9300
9200
Time
0.6
0.0
ACF
ACF of Residuals
10
15
20
25
Lag
p value
10
lag
3.7.
Referencias
Engle, R.F. (1982). Autoregressive conditional heteroscedasticity with estimates of the variance of the United Kingdom inflation. Econometrica, 50, 9871007.
Franses, P.H. (1998). Time Series Models for Business and Economic Forecasting. Cambridge University Press.
Harvey, A.C. y Durbin, J. (1986). The effects of seat belt legislation on British road casualties: a case study in structural times series modeling. Journal of the Royal Statistical
Society, Series A 149, 187-227. With discussion.
Jones, P.D. (1994). Hemispheric surface air temperature variations: A reanalysis and an
update to 1993. J. Clim., 7, 17941802.
Ljung, G.M. y Box, G.E.P. (1978). On a measure of lack of fit in time series models.
Biometrika, 65, 553564.
Parker, D.E., Jones, P.D., Bevan, A. y Folland, C.K. (1994). Interdecadal changes of surface
temperature since the late 19th century. J. Geophysical Research, 90, 1437314399.
Parker, D.E., Folland, C.K. y Jackson, M. (1995). Marine surface temperature: observed
variations and data requirements. Climatic Change, 31, 55960.
Pe
na, D. (2005). An
alisis de Series Temporales. Alianza Editorial.
111
Al f
on
so
Ga
rc
aP
ere
z.
UN
E
Phillips, P.C.B. y Ouliaris, S. (1990). Asymptotic properties of residual based tests for
cointegration. Econometrica, 58, 165193.
Phillips, P.C.B. y Perron, P. (1988). Trends and random walks in macroeconomic time
series. Biometrika, 75, 335346.
Shumway, R.H. y Verosub, K.L. (1992). State space modeling of paleoclimatic time series.
In Pro. 5th Int. Meeting Stat. Climatol. Toronto, 22-26, Junio, 1992.
Taylor, S.J. (1986). Modeling Financial Time Series. Chichester: John Wiley and Sons.
Al f
on
so
Ga
rc
aP
ere
z.
UN
E
112
D
Al f
on
so
Ga
rc
aP
ere
z.
UN
E
Captulo 4
Introducci
on
12 (x1 )2
1
e 1
.
1 2
p1 f1 (x)+ (1 p1 ) f2 (x) = p1
113
114
Al f
on
so
Ga
rc
aP
ere
z.
UN
E
pi fi (x)
i=1
4.2.
Estimaci
on de los par
ametros
4.2.1.
Pc
M
etodos Cl
asicos
115
Al f
on
so
Ga
rc
aP
ere
z.
UN
E
ni
1
2
3
3
4
4
5
9
5
4
4
X
1 72
1 73
1 74
1 75
1 86
1 89
1 90
1 92
1 93
1 94
1 95
ni
3
3
2
1
1
1
2
2
3
4
4
X
1 96
1 97
1 98
2 00
2 01
2 02
2 03
2 04
2 05
2 06
ni
7
9
7
4
4
3
2
2
1
1
Ya vimos all que estos datos proceden de una mixtura de dos normales; para identificar
de que dos normales se trata, primero deberemos crear el vector de observaciones, o bien
tecleando los 110 datos ejecutando (1), o simplemente import
andolos ejecutando (2),
> pobla<-c(161,162,162,...,206)
> pobla<-read.table("d:\\datos\\Ejem14_5.txt",header=T)
(1)
(2)
Para obtener los valores de la mixtura, primero ejecutamos (3), obteniendo como respuesta
que la mejor opci
on es dos componentes (como ya suponamos) con la misma varianza. Para
obtener las estimaciones de los par
ametros de las dos componentes ejecutamos (4),
> library(mclust)
> Mclust(pobla[,1])
(3)
(4)
116
Al f
on
so
Ga
rc
aP
ere
z.
UN
E
(5)
1
2
168.0003 197.1931
(6)
$variance
$variance$modelName
[1] "E"
$variance$d
[1] 1
$variance$G
[1] 2
$variance$sigmasq
[1] 13.97301
(7)
obteniendo en las proporciones de mezcla en (5), las medias en (6) y la varianza com
un en
(7). Es decir, inferimos que los datos proceden de la mixtura de normales
0 482 N (168,
13 973).
Si queremos representar los datos y la mixtura ajustada, primero creamos la nueva funci
on
dibu
function (x)
{
0.482*dnorm(x,168,3.738)+0.518*dnorm(x,197.2,3.738)
}
y luego ejecutamos
> x<-seq(160,210,len=100)
> hist(pobla[,1],main=" ",xlab=" ",ylab=" ",prob=T,col=2,ylim=c(0,0.06))
> lines(x,dibu(x))
(8)
117
Al f
on
so
Ga
rc
aP
ere
z.
UN
E
0.00
0.01
0.02
0.03
0.04
0.05
0.06
160
170
180
190
200
210
[4,]
[5,]
[6,]
[7,]
[8,]
[9,]
[10,]
[11,]
[12,]
[13,]
[14,]
[15,]
[16,]
[17,]
[18,]
[19,]
[20,]
[21,]
[22,]
[23,]
[24,]
[25,]
1.000000e+00
1.000000e+00
1.000000e+00
1.000000e+00
1.000000e+00
1.000000e+00
1.000000e+00
1.000000e+00
1.000000e+00
1.000000e+00
1.000000e+00
1.000000e+00
1.000000e+00
1.000000e+00
1.000000e+00
1.000000e+00
1.000000e+00
1.000000e+00
1.000000e+00
1.000000e+00
1.000000e+00
1.000000e+00
1.781059e-18
1.781059e-18
1.781059e-18
1.438866e-17
1.438866e-17
1.438866e-17
1.162418e-16
1.162418e-16
1.162418e-16
1.162418e-16
9.390839e-16
9.390839e-16
9.390839e-16
9.390839e-16
7.586587e-15
7.586587e-15
7.586587e-15
7.586587e-15
7.586587e-15
6.128984e-14
6.128984e-14
6.128984e-14
118
Al f
on
so
Ga
rc
aP
ere
z.
UN
E
[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,]
[76,]
6.128984e-14
6.128984e-14
6.128984e-14
6.128984e-14
6.128984e-14
6.128984e-14
4.951428e-13
4.951428e-13
4.951428e-13
4.951428e-13
4.951428e-13
4.000115e-12
4.000115e-12
4.000115e-12
4.000115e-12
3.231577e-11
3.231577e-11
3.231577e-11
3.231577e-11
2.610698e-10
2.610698e-10
2.610698e-10
2.109107e-09
2.109107e-09
2.109107e-09
1.703886e-08
1.703886e-08
1.376520e-07
9.992412e-01
9.999986e-01
9.999998e-01
9.999998e-01
1.000000e+00
1.000000e+00
1.000000e+00
1.000000e+00
1.000000e+00
1.000000e+00
1.000000e+00
1.000000e+00
1.000000e+00
1.000000e+00
1.000000e+00
1.000000e+00
1.000000e+00
1.000000e+00
1.000000e+00
1.000000e+00
1.000000e+00
1.000000e+00
1.000000e+00
[77,]
[78,]
[79,]
[80,]
[81,]
[82,]
[83,]
[84,]
[85,]
[86,]
[87,]
[88,]
[89,]
[90,]
[91,]
[92,]
[93,]
[94,]
[95,]
[96,]
[97,]
[98,]
[99,]
[100,]
[101,]
[102,]
[103,]
[104,]
[105,]
[106,]
[107,]
[108,]
[109,]
[110,]
119
Al f
on
so
Ga
rc
aP
ere
z.
UN
E
1.000000e+00
1.000000e+00
1.000000e+00
1.000000e+00
1.000000e+00
1.000000e+00
1.000000e+00
1.000000e+00
1.000000e+00
1.000000e+00
1.000000e+00
1.000000e+00
1.000000e+00
1.000000e+00
1.000000e+00
1.000000e+00
1.000000e+00
1.000000e+00
1.000000e+00
1.000000e+00
1.000000e+00
1.000000e+00
1.000000e+00
1.000000e+00
1.000000e+00
1.000000e+00
1.000000e+00
1.000000e+00
1.000000e+00
1.000000e+00
1.000000e+00
1.000000e+00
1.000000e+00
1.000000e+00
En este ejemplo se obtiene que las primeras 53 observaciones proceden de la primera poblaci
on casi con probabilidad 1 y que las restantes pertenecen, casi con probabilidad 1, a la
segunda poblaci
on.
La probabilidades a posteriori se suelen representar en un gr
afico, que para este ejemplo sera
el de la Figura 4.2 obtenida ejecutando
> plot(pobla[,1],solu[,1],type="l")
> lines(pobla[,1],solu[,2],type="l",col=2)
120
0.0
0.2
0.4
solu[, 1]
0.6
0.8
1.0
Al f
on
so
Ga
rc
aP
ere
z.
UN
E
160
170
180
190
200
pobla[, 1]
4.2.2.
Intervalos bootstrap
En ocasiones, adem
as de las estimaciones por punto de los (habitualmente
5) par
ametros de la mixtura, se desea obtener intervalos de confianza para los
par
ametros por medio de las tecnicas bootstrap; en concreto se suele utilizar el
Intervalo Percentil (percentil confidence interval) (MR-secci
on 9.7.3). Para ello
se deben utilizar las funciones de Rmo que aparecen en el texto MR-captulo
9, o equivalentemente, las mismas sin la extensi
on .s de la librera bootstrap
de R.
No obstante, como queremos combinarlas con las funciones de obtenci
on
de los estimadores del Mixture Analysis, debemos programar un poco con
R porque necesitamos definir la funci
on a remuestrear. Veamos el siguiente
ejemplo.
Ejemplo 10.1 (continuaci
on)
Si queremos obtener un intervalo de confianza percentil bootstrap de la media de la
primera componente, necesitamos definir primero la funci
on que hemos denominado media1
function (x)
{
Mclust(x,G=2)$parameter$mean[1]
}
121
Al f
on
so
Ga
rc
aP
ere
z.
UN
E
library(bootstrap)
library(mclust)
solumedia1<-bootstrap(pobla[,1],1000,media1)$thetastar
quantile(solumedia1,c(0.05,0.95))
5%
95%
167.2558 168.7453
> solumedia2<-bootstrap(pobla[,1],1000,media2)$thetastar
> quantile(solumedia2,c(0.05,0.95))
5%
95%
196.2692 198.1178
> solupropor1<-bootstrap(pobla[,1],1000,propor1)$thetastar
> quantile(solupropor1,c(0.05,0.95))
5%
95%
0.3995458 0.5545619
122
Al f
on
so
Ga
rc
aP
ere
z.
UN
E
function (x)
{
Mclust(x,G=2)$parameter$pro[2]
}
y luego ejecutamos
> solupropor2<-bootstrap(pobla[,1],1000,propor2)$thetastar
> quantile(solupropor2,c(0.05,0.95))
5%
95%
0.4363636 0.6000000
function (x)
{
sqrt(Mclust(x,G=2)$parameter$variance$sigmasq[1])
}
y luego ejecutaramos
> soludesvi<-bootstrap(pobla[,1],1000,desvi)$thetastar
> quantile(soludesvi,c(0.05,0.95))
5%
95%
2.969043 4.029853
4.2.3.
M
etodos Robustos
Aunque la funci
on TLE de la librera tlemix podra proporcionar un Mixture Analysis robusto, preferimos utilizar la funci
on wle.normal.mixture del
paquete wle.
123
Al f
on
so
Ga
rc
aP
ere
z.
UN
E
> library(wle)
> wle.normal.mixture(pobla[,1],m=2)
Call:
wle.normal.mixture(x = pobla[, 1], m = 2)
Location:
[,1]
[1,] 168.0
Scale:
[1,]
[,1]
3.292
Proportion:
[,1]
[1,] 0.4835
[,2]
197.3
[,2]
3.853
[,2]
0.5165
Number of solutions
observ
andose que sale pr
acticamente lo mismo porque no hay datos an
omalos en la muestra.
4.3.
Revisi
on del An
alisis Cluster
En el Captulo 5 de TA estudiamos el An
alisis Cluster, tecnica alternativa
al Mixture Analysis y en donde el n
umero de grupos a formar no suele estar
fijado de antemano.
Las tecnicas de An
alisis Cluster suelen considerarse de tres tipos: Jer
arquicas Aglomerativas, de tipo descriptivo sin suposici
on de un modelo probabilstico, en donde, partiendo de tantos clusters como individuos a clasificar estos
se van agrupando en sucesivas etapas hasta formar un solo cluster, seg
un las
distancias a las que se encuentran los individuos: en cada etapa se agrupan los
individuos o clusters m
as pr
oximos. Este proceso se representa en un gr
afico
denominado dendograma, el cual permite decidir con cu
antos clusters quedarnos (si no estaba prefijado antes) y la composici
on de los mismos. Las funciones
de R a utilizar (las del texto TA lo eran de Rmo) son hclust y agnes, ambas
muy similares.
124
Al f
on
so
Ga
rc
aP
ere
z.
UN
E
k clusters (n
umero fijado de antemano) seg
un alg
un criterio de
optimo. B
asicamente, el metodo en este grupo es el k-medias. Las funciones de R a utilizar
son kmeans (para ejecutar el k-medias), pam (para ejecutar un k-medias m
as
robusto) y, menos utilizadas, clara (cuando hay una gran cantidad de datos)
y fanny (para realizar un an
alisis cluster fuzzy).
Por u
ltimo, el tercer grupo de tecnicas cluster suele denominarse Jer
arquicas Divisivas en donde, partiendo de un u
nico cluster, este se va dividiendo o
troceando sucesivamente. Las funciones de R a utilizar son fundamentalmente
diana y, en menos ocasiones, mona.
En todos estas tecnicas suele ser necesario aplicar alguna medida de dis
tancia entre los individuos. Estas
se calculan con las funciones de R, dist
(para el caso habitual en el que las variables sean numericas) y daisy (para
el caso en el que las variables sean o no numericas).
En todos los casos, la referencia fundamental es el texto de Kaufman y
Rousseeuw (1990) y la mayora de todas estas funciones estan en la librera
cluster por lo que ser
a necesario abrirla si R no encuentra alguna funci
on.
10
44
43
41
42
47
45
4653
50
48
49
51
52
22
21
20
18
19
31
30
29
28
27
26
25
23
24
36
35
34
32
33
40
39
37
38
13
12
10
11
17
16
14
15 1
2
3
6
4
5
9
7
8 54
55
56
57
93
92
91
90
89
87
88
77
76
75
74
73
71
72
86
85
84
83
82
81
80
78
79
58
59
62
60
61
66
65
63
64
70
69
67
68
97
96
94
95
101
100
98
99
104
102
103
105
106
110
109
107
108
Height
15
20
25
Medias
A
hclust (*, "centroid")
125
Al f
on
so
Ga
rc
aP
ere
z.
UN
E
> A<-dist(pobla,method="euclidean",diag=T,upper=T)
(1)
> B1<-hclust(A,method="centroid")
> B2<-hclust(A,method="median")
(2)
(3)
> plot(B1,main="Medias")
> plot(B2,main="Medianas")
10
53
50
48
49
51
52
36
35
34
32
33
40
39
37
38
44
43
41
42
47
45
46 1
2
3
6
4
5
9
7
8
13
12
10
11
17
16
14
15
22
21
20
18
19
31
30
29
28
27
26
25
23
24
110
109
107
108
97
96
94
95
101
100
98
99
104
102
103
105
106
93
92
91
90
89
87
88
77
76
75
74
73
71
72
86
85
84
83
82
81
80
78
79
58
59
62
60
61
66
65
63
64
70
69
67
68 54
55
56
57
Height
15
20
Medianas
A
hclust (*, "median")
La funci
on agnes (de la librera cluster) proporcionara el mismo resultado aunque
aportando el coeficiente de aglomeraci
on, un porcentaje que nos indica lo bueno que ha sido
el resultado.
Para ejecutar el algoritmo k-medias, podemos ejecutar y representar, el cl
asico con (4)
o el robusto con (5). Los resultados son los mismos.
> C1<-kmeans(pobla,2)
> C1
K-means clustering with 2 clusters of sizes 57, 53
(4)
Cluster means:
y Pob
1 197.193
0
2 168.000
1
Clustering vector:
[1] 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2
[38] 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1
126
Al f
on
so
Ga
rc
aP
ere
z.
UN
E
20
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
55 54
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
10
Height
30
40
Dendograma divisivo
pobla
Divisive Coefficient = 1
[75] 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1
Within cluster sum of squares by cluster:
[1] 934.8772 602.0000
Available components:
[1] "cluster" "centers"
"withinss" "size"
> plot(pobla,col=C1$cluster)
> C2<-pam(pobla,k=2,diss=F)
(5)
> C2
Medoids:
ID
y Pob
[1,] 31 168
1
[2,] 78 197
0
Clustering vector:
[1] 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1
[38] 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2
[75] 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2
Objective function:
build
swap
5.109091 2.881818
Available components:
[1] "medoids"
"id.med"
[6] "clusinfo"
"silinfo"
"clustering" "objective"
"diss"
"call"
"isolation"
"data"
127
Al f
on
so
Ga
rc
aP
ere
z.
UN
E
> plot(pobla,col=C2$cluster)
Por u
ltimo, si queremos realizar un An
alisis Cluster Divisivo, ejecutaramos (6) obteniendo los mismos resultados que antes, los cuales se pueden representar obteniendo la Figura
4.5.
> D<-diana(pobla,diss=F)
> plot(D,main="Dendograma divisivo")
4.4.
(6)
An
alisis Discriminante, An
alisis de Mixturas,
An
alisis Cluster y An
alisis con Componentes
Principales
4.4.1.
An
alisis con Componentes Principales
128
Al f
on
so
Ga
rc
aP
ere
z.
UN
E
el caso cl
asico como en el robusto aunque, en este ejemplo, al no habar datos
an
omalos, no habr
a diferencias entre ambos.
Para el caso de una matriz de datos estandarizada A, es decir, en donde
no haya variables con m
as peso que otras, la secuencia de comandos en el caso
cl
asico sera (si hay 40 individuos)
> resultado1<-prcomp(A)
> plot(resultado1$x[,1],resultado1$x[,2])
> text(resultado1$x[,1],resultado1$x[,2],1:40,adj=-1,cex=0.8)
library(robustbase)
Ma<-covMcd(A,cor=F)
resultado2<-princomp(A,covmat=Ma,cor=F)$scores
plot(resultado2[,1],resultado2[,2])
text(resultado2[,1],resultado2[,2],1:40,adj=-1,cex=0.8)
4.5.
Referencias
Dempster, A.P., Laird, N.M. and Rubin, D.B. (1977). Maximum likelihood from incomplete
data via the EM algorithm. Journal of the Royal Statistical Society, Series B, 39, 1-38.
Dong, Z. (1997). Mixture analysis and its preliminary application in archaeology. Journal
of Archaeological Science, 24, 141-161.
Everitt, B.S. (1984). Maximum likelihood estimation of the parameters in a mixture of two
univariate normal distributions; a comparison of different algorithms. The Statistician,
33, 205-215.
Everitt, B.S. and Hand, D.J. (1981). Finite Mixture Distributions. Chapman And Hall.
Flury, B.D., Airoldi, J.-P. and Biber, J.-P. (1992). Gender identification of water pipits
(anthus spinoletta) using mixtures of distributions. Journal of Theoretical Biology,
158, 465-480.
Titterington, D.M., Smith, A.F.M. and Makov, U.E. (1985). Statistical Analysis of Finite
Mixture Distributions. Wiley.
D
Al f
on
so
Ga
rc
aP
ere
z.
UN
E
Captulo 5
T
ecnicas Estadsticas para
Datos Espaciales
5.1.
Introducci
on
Muchos datos que se observan y sobre los que queremos sacar conclusiones
estadsticas tienen una componente espacial. As, si estamos analizando una
enfermedad, la localizaci
on geogr
afica de los lugares en donde se produjeron
casos es muy importante. No digamos ya el an
alisis de aspectos tan actuales
como el posible cambio clim
atico, los lugares en donde se toman las temperaturas son tan importantes como los valores de estas.
En general, la componente espacial es omitida por la dificultad de analizar
este tipo datos. Esperamos que, despues de estudiar este captulo, el lector no
prescinda de esta valiosa informaci
on.
Formalmente, los datos que se analizan con este tipo de tecnicas consisten
en localizaciones {s1 , ..., sn } que habitualmente lo ser
an sobre una superficie,
generalmente La Tierra, es decir, habitualmente ser
an pares de puntos (xi , yi ),
como (latitud , longitud), o (menor distancia a la costa , menor distancia a
una lnea imaginaria paralela a la costa), y unos datos {Z(s1 ), ..., Z(sn )} observados sobre esas localizaciones, como podran ser precipitaciones de lluvia,
o la polucion aerea, etc. Supondremos que los datos son el resultado de la
observaci
on de una variable Z, unidimensional o multidimensional.
Seg
un el tipo de localizaci
on s que se considere, los datos espaciales se
denominan y analizan de forma diferente. Si las localizaciones {s1 , ..., sn } son
fijas pero valores cualesquiera de la superficie considerada, es decir, matem
aticamente valores cualesquiera de IRk (habitualmente k = 2
o k = 3) se habla
de Geoestadstica.
Si las localizaciones no son fijas sino que tambien son aleatorias (pero
independientes de Z) se habla de Procesos Puntuales. Es muy habitual en ellos
129
130
Al f
on
so
Ga
rc
aP
ere
z.
UN
E
5.2.
Como dijimos m
as arriba, la matriz de datos espaciales habitual estar
a formada por columnas en donde aparecer
an localizaciones y valores de variables
medidas en esas localizaciones.
Ejemplo 5.1
Los datos meuse de la librera sp corresponden a localizaciones y concentraciones (en un
elev
dist
om ffreq soil lime landuse dist.m
7.909 0.00135803 13.6
1
1
1
Ah
50
6.983 0.01222430 14.0
1
1
1
Ah
30
............................................................................................
179466 330381
180627 330190
0.8
2.7
21
27
51
124
162
375
9.406 0.35860600
8.261 0.01222430
5.7
5.5
3
3
1
3
0
0
W
W
en donde las dos primeras columnas son las localizaciones en coordenadas RDM (un sistema
de coordenadas topogr
aficas holandes); las cuatro siguientes, concentraciones en partes por
mill
on de metales pesados; elev la elevaci
on relativa sobre la llanura; dist la distancia GIS
al Mosa; om materia org
anica del suelo; las cuatro siguientes, variables de tipo cualitativo y,
finalmente, dist.m la distancia en metros al Mosa.
La manera de incorporar estos datos a R es en formato data.frame, por ejemplo recogiendolos
primero en un fichero txt.
460
40
131
Al f
on
so
Ga
rc
aP
ere
z.
UN
E
Representaci
on en Puntos y Polgonos
La representaci
on en Puntos es la habitual de una nube de puntos, generalmente sin marco ni ejes coordenados como sucede en los mapas, utilizando
la funci
on plot con sus conocidos argumentos. Previamente debemos extraer
las localizaciones de la matriz de datos.
Ejemplo 5.1 (continuaci
on)
Primero extraemos las localizaciones con (1) ya que los nombres de estas en la matriz
de datos son, en este ejemplo, x e y. Luego ejecutamos plot con sus habituales opciones,
obteniendo la Figura 5.1
>
>
>
>
library(sp)
data(meuse)
coordinates(meuse)<-c("x","y")
plot(meuse,pch=16,col=2)
(1)
132
326000
330000
334000
338000
Al f
on
so
Ga
rc
aP
ere
z.
UN
E
179000
180000
181000
182000
Representaci
on en Lneas
Una vez que tenemos las localizaciones, podemos unirlas mediante segmentos con la funci
on (de la librera sp) SpatialLines.
Ejemplo 5.1 (continuaci
on)
Ejecutando la funci
on SpatialLines en las localizaciones de los datos antes extradas, obtenemos la Figura 5.3.
133
Al f
on
so
Ga
rc
aP
ere
z.
UN
E
Representaci
on en Redes (Grids)
Si queremos representar un
area, basta con tener muchas localizaciones de
ella, de manera que la representaci
on de esa gran cantidad de puntos dar
a la
sensaci
on de una representaci
on de toda la zona. Este tipo de gr
afica se denomina Representaci
on en Redes.
Ejemplo 5.1 (continuaci
on)
>
>
>
>
data(meuse.grid)
coordinates(meuse.grid)<-c("x","y")
zona<-as(meuse.grid,"SpatialPixels")
image(zona,col="lightblue")
(1)
(2)
(3)
Podemos representar juntos el ro, la zona en donde se produjeron las localizaciones y estas
comenzando los tres gr
aficos con la zona y utilizando el argumento add=TRUE en la funci
on
plot. Para representar juntos la zona y las localizaciones basta con ejecutar (4) y (5). Si
queremos que tambien aparezca el ro debemos cambiar antes un poco el objeto a representar
y ejecutar (6) antes de (7)
As, la Figura 5.5 se obtiene ejecutando las tres sentencias siguientes,
>
>
>
>
Al f
on
so
Ga
rc
aP
ere
z.
UN
E
134
image(zona,col="lightblue")
plot(meuse,pch=16,col=2,add=TRUE)
rio<-SpatialPolygons(list(Polygons(list(Polygon(meuse.riv)),"meuse.riv")))
plot(rio,col=3,add=TRUE)
5.3.
(4)
(5)
(6)
(7)
135
Al f
on
so
Ga
rc
aP
ere
z.
UN
E
5.3.1.
An
alisis de la distribuci
on espacial
cells
136
Al f
on
so
Ga
rc
aP
ere
z.
UN
E
0 35
0 487
0 637
...
0 35
0 462
0 625
Su representaci
on gr
afica es la Figura 5.6 obtenida ejecutando (1). Esta representaci
on
gr
afica sugiere que los datos est
an distribuidos regularmente sobre el cuadrado unidad. Es
decir, los datos siguen el modelo de estar igualmente espaciados.
> library(spatstat)
> data(cells)
> plot(cells,pch=16)
(1)
Ejemplo 5.3
Los siguientes datos son las localizaciones de pinos negros japoneses realizadas por Numata
(1961) re-escalados a un cuadrado de lado unidad.
japanesepines
0 09
0 29
0 38
...
0 39
0 43
0 62
137
Al f
on
so
Ga
rc
aP
ere
z.
UN
E
Su representaci
on gr
afica es la Figura 5.7 obtenida ejecutando (1). De esta representaci
on
gr
afica parece deducirse que estos no se distribuyen ni regularmente ni siguiendo ning
un
modelo sobre el cuadrado unidad; parece que se distribuyen al azar sobre dicho cuadrado sin
seguir un patr
on claro.
Remarcamos que en este captulo, al azar, no significar
a lo mismo que uniformemente distribuidos (situaci
on que se presentaba en el ejemplo anterior). L
ogicamente si se supone un
modelo probabilstico que genera los datos, estos se obtienen al azar seg
un el modelo supuesto. Este modelo puede ser el modelo uniforme (CB-secci
on 4.5.2) u otro. En este captulo
entenderemos distribuidos al azar cuando no haya modelo aparente que genere los datos
mientras que uniformemente significar
a que es un modelo uniforme el que los genera. Esto
no es del todo cierto porque cuando m
as abajo analicemos si puede admitirse o no que los
datos est
an generados al azar supondremos un proceso de Poisson homogeneo como generador de los datos, pero esto es s
olo una suposici
on matem
atica para explicar situaciones como
la representada en la Figura 5.7 en donde no parece haber ni una regularidad (uniformidad)
en la distribuci
on de las localizaciones, como ocurra en el ejemplo anterior, ni una tendencia
a agrupamientos (a clusters) en estas, como ocurrir
a en el ejemplo siguiente.
> data(japanesepines)
> plot(japanesepines,pch=16)
(1)
Ejemplo 5.4
Los siguientes datos representan las ubicaciones de 62 secuoyas de California en una regi
on
muestral cuadrada. Los datos originales era 195, procedentes de Strauss (1975), pero se suelen
utilizar los 62 aqu tratados, estudiados anteriormente por Ripley (1977) en una subregi
on
que se ha re-escalado a un cuadrado unidad.
0 36
0 44
0 48
...
0 74
0 86
0 96
0 08
0 1
0 08
...
0 9
0 9
0 96
Su representaci
on gr
afica es la Figura 5.8 obtenida ejecutando (1). De esta representaci
on
gr
afica se desprende que los datos aparecen distribuidos en clusters lo que indica un modelo
subyacente, no regular como ocurra en el caso de las celulas.
> data(redwood)
> plot(redwood,pch=16)
(1)
Al f
on
so
Ga
rc
aP
ere
z.
UN
E
138
redwood
139
Al f
on
so
Ga
rc
aP
ere
z.
UN
E
Como dijimos m
as arriba, dentro del An
alisis de la Distribuci
on de las
localizaciones, el primer objetivo es averiguar si estas est
an distribuidas al zar
en la regi
on de estudio. En el ejemplo anterior de los pinos negros japoneses
pareca intuirse una aleatoriedad en su distribuci
on. Es decir, que no existe
ning
un patr
on que regule su ubicaci
on. Esta idea se denomina Aleatoriedad
Espacial Completa (Complete Spatial Randomness) o, abreviadamente, CSR
y se formaliza matem
aticamente con un Proceso de Poisson homogeneo de
par
ametro , ya que este tipo de procesos se caracteriza por tres propiedades:
a) El n
umero de localizaciones en una regi
on A de
area |A| sigue una
distribuci
on de Poisson con media |A|, en donde es la intensidad del proceso,
es decir, el n
umero esperado de localizaciones por unidad de
area.
b) Dadas n localizaciones en una regi
on A, es decir, condicionalmente a
que hay n localizaciones en A, estas se distribuyen seg
un una distribuci
on
uniforme sobre A.
c) En dos regiones disjuntas A y B, el n
umero de localizaciones en A y el
n
umero de localizaciones en B son variables aleatorias independientes.
w>0
140
Al f
on
so
Ga
rc
aP
ere
z.
UN
E
G(w) = 1 e w
w > 0.
1.0
0.8
0.6
0.4
0.2
obs
0.0
CLULAS
PINOS JAPONESES
1.0
0.8
0.6
0.4
0.2
0.0
0.0
0.2
0.4
0.6
0.8
1.0
theo
Figura 5.9 : An
alisis visual de la CSR
>
>
>
>
>
>
>
>
141
Al f
on
so
Ga
rc
aP
ere
z.
UN
E
library(lattice)
library(spatstat)
r<-seq(0,sqrt(2)/6,by=0.005)
japo<-envelope(as(japanesepines,"ppp"),fun=Gest,r=r,nrank=2,nsim=99)
rojo<-envelope(as(redwood,"ppp"),fun=Gest,r=r,nrank=2,nsim=99)
celu<-envelope(as(cells,"ppp"),fun=Gest,r=r,nrank=2,nsim=99)
resulta<-rbind(japo,rojo,celu)
resulta<-cbind(resulta,DATASET=rep(c("PINOS JAPONESES","SECUOYAS CALIFORNIANAS","C
ELULAS"),each=length(r)))
Ejemplo 5.5
La utilizaci
on de los datos de los tres ejemplos anteriores es interesante pero habitualmente el
lector estar
a m
as interesado en analizar si sus propios datos cumplen o no la hip
otesis CSR.
Para ello detallaremos este hipotetico ejemplo en el que el autor del texto se ha inventado
unos pares de datos en (1) y (2) que seran, por ejemplo, los pares reales (latitud, longitud),
para formar la matriz de datos en (3), que corresponder
a a la matriz de datos reales del
lector. El an
alisis de la CSR se hace con datos re-escalados en el cuadrado unidad; es decir,
debemos cambiar la escala de estos para que todos ellos tomen valores en [0,1]. Esto se
consigue restando a cada dato x el menor de los valores, mn(x) y dividiendo el resultado de
esta diferencia por la diferencia entre el m
aximo y el mnimo de los valores, es decir, haciendo
el c
alculo
x mn(x)
.
m
ax(x) mn(x)
El re-escalamiento se hace en tres pasos a partir de (4), denominando de la misma manera
la matriz resultante. Por supuesto, si el lector debe repetir este proceso varias veces, le
resultar
a m
as sencillo crear una funci
on que haga todos los pasos. Finalmente se pueden
representar los datos.
> library(lattice)
> library(spatstat)
> x1<-c(21,22,21.2,22.4,22.8,21.7,22.3,21.5,22.4,21.9,21.2,22.2,21.4,
22.6,23.0,21.9,22.5,21.7,22.6,22.1,21.5,22.5,21.7,22.9,23.3,22.2,
22.8,22.0,22.9,22.4)
(1)
> x2<-c(34.1,35,33.9,34.9,35.1,33.7,33.1,33.4,33.5,33.7,33.7,34.6,33.5,
34.5,34.7,33.3,32.7,33.0,33.1,33.3,34.8,35.7,34.6,35.6,35.8,34.4,33.8,
34.1,34.2,34.4)
(2)
> prueba<-matrix(c(x1,x2),ncol=2)
(3)
142
Al f
on
so
Ga
rc
aP
ere
z.
UN
E
> b1<-(prueba[,1]-min(prueba[,1]))/(max(prueba[,1])-min(prueba[,1]))
> b2<-(prueba[,2]-min(prueba[,2]))/(max(prueba[,2])-min(prueba[,2]))
> prueba<-matrix(c(b1,b2),ncol=2)
(4)
> plot(prueba)
(5)
Como el modelo te
orico es muy difcil de manejar, lo que hacemos es simular, con la funci
on envelope de la librera spatstat muchas realizaciones suyas (las que queramos con
el argumento nsim de envelope) del proceso puntual, en este caso G, para lo que utilizamos el argumento fun=Gest de envelope. Esta funci
on envelope s
olo admite datos del tipo
ppp, por eso transformamos antes los datos japanesepines con la funci
on as. Los datos en
forma de matriz no son de este tipo. Primero deberemos transformamos en datos del tipo
SpatialPoints con esta funci
on ejecutando (6) y, despues en datos ppp, con la funci
on as
pero abierta la librera maptools ejecutando (7),
> prueba2<-SpatialPoints(prueba)
> library(maptools)
> prueba3<-as(prueba2,"ppp")
(6)
(7)
PRUEBA
1.0
0.8
obs
0.6
0.4
0.2
0.0
0.0
0.2
0.4
0.6
0.8
1.0
theo
Figura 5.10 : An
alisis de datos de prueba
De esta forma, con envelope obtendremos unos entornos de confianza entre los que debera
b
de estar las distribuci
on emprica G(w).
En estos entornos se puede fijar el coeficiente de
confianza mediante el argumento nrank de la funci
on envelope, diciendole cu
antos de los
valores simulados eliminar a cada lado del entorno. Si fijamos nrank=2 (quitamos 2 a cada
lado) sobre 100 simulaciones nsim=99, tendremos entornos de confianza del 96 %.
Por tanto, ejecutando (8), tendremos el entorno de confianza
143
Al f
on
so
Ga
rc
aP
ere
z.
UN
E
(8)
Ahora s
olo tenemos que representarlo y sobre-impresionar en el dibujo del entorno as creado
(y que, adelantamos a los lectores que tratan de replicar este ejemplo podr
a cambiar de
b
simulaci
on en simulaci
on) nuestra distribuci
on emprica G(w).
Esta representaci
on gr
afica
se puede hacer de varias maneras aunque utilizaremos la combinaci
on anterior (script en
terminologa R) ejecutando
> entorno<-cbind(entorno,DATASET=rep(c("PRUEBA"),each=length(w)))
> DATASET=rep(c("PRUEBA"),each=length(w))
144
Al f
on
so
Ga
rc
aP
ere
z.
UN
E
Estimaci
on de la Intensidad
En el caso de un proceso de Poisson homogeneo la intensidad es constante
en cada
area considerada A, por lo que, si en ese
area hay n localizaciones, un
b = n/|A| en donde |A| representa el
estimador suyo ser
a
area de la regi
on
A.
En el caso de procesos de Poisson no homogeneos hay varias posibilidades
que se resumen en dos: utilizar Metodos Parametricos, consistentes en proponer una funci
on cuyos par
ametros son estimados por el metodo de m
axima
verosimilitud. Esta va permite incluir p covariables existentes Zj , j = 1, ..., p
y utilizar, por ejemplo, un modelo log-lineal de la forma
log (s) =
p
X
j Zj (s)
j=1
on
siendo Zj (s) j = 1, ..., p los valores que toman las covariables en la localizaci
s.
La segunda posibilidad en la estimaci
on de la intensidad de un proceso
de Poisson no homogeneo son los Metodos no Parametricos, basados en el
Estimador N
ucleo Suavizado (kernel smoothing) dado por
b
(s)
=
n
X
1
||s si ||
K
q(||s||) h2
h
[5.1]
i=1
3
(1 ||s||)2
145
Al f
on
so
Ga
rc
aP
ere
z.
UN
E
redwoodfull
146
Al f
on
so
Ga
rc
aP
ere
z.
UN
E
Intensidad
1500
1000
500
0.8
0.6
0.2
0.4
0.4
0.6
0.2
0.8
0 15 es el m
aximo admisible. Es decir, obtenemos 100 pares de valores (h, M SE). Podramos
representarlos para ver en que h se alcanza el menor M SE, pero es m
as sencillo ejecutar (3)
> library(splancs)
> library(spatstat)
> poli<-as.points(list(x=c(0,0,1,1),y=c(0,1,1,0)))
(1)
> suavizados<-mse2d(as.points(as(redwoodfull,"ppp")),poli,100,0.15)
(2)
> suavizados$h[which.min(suavizados$mse)]
[1] 0.039
(3)
(4)
> a1<-kernel2d(as.points(as(redwoodfull,"ppp")),poli,h0=0.039)$x
(5)
147
Al f
on
so
Ga
rc
aP
ere
z.
UN
E
(6)
(7)
> persp(a1,a2,a3,theta=30,phi=30,expand=0.5,col="lightblue",ltheta=120,
(8)
+ shade=0.75,ticktype = "detailed",xlab=" ",ylab=" ",zlab=" ",main="Intensidad")
En otras ocasiones se a
nade al habitual modelo de regresi
on lineal m
ultiple una variaci
on residual espacial (como hacamos en el caso de las series
temporales)
E[Y ] = 0 + 1 X1 + ... + p Xp + h(s).
Y, adem
as, la variable de respuesta puede ser dicot
omica (estudios de casocontrol), apareciendo a la izquierda de la igualdad, en estos casos, log p(s), en
los modelos anteriores.
Con todo esto queremos decir que es muy importante establecer de forma
clara el modelo considerado en la aplicaci
on, sea GAM o no. Dos buenos textos
para el an
alisis de los modelos GAM son Hastie y Tibshirani (1990), y el de
Wood (2006).
148
Al f
on
so
Ga
rc
aP
ere
z.
UN
E
5.3.2.
An
alisis de la densidad espacial
(1)
(2)
(3)
(1)
(2)
(1)
(2)
5.4.
149
Al f
on
so
Ga
rc
aP
ere
z.
UN
E
Referencias
Berman, M. y Diggle, P.J. (1989). Estimating weighted integrals of the second-order intensity of a spatial point process. Journal of the Royal Statistical Society, Serie B, 51,
8192.
Bivand, R.S., Pebesma, E.J. y G
omez-Rubio, V. (2008). Applied Spatial Data Analysis.
Springer.
Cressie, N.A.C. (1993). Statistics for Spatial Data. Wiley.
Diggle, P.J. (1985). A kernel method for smoothing point process data. Applied Statistics,
34, 138147.
Diggle, P.J. (2003). Statistical Analysis of Spatial Point Patterns, 2a edici
on. Arnold.
Hastie, T.J. y Tibshirani, R.J. (1990). Generalized Additive Models. Chapman and Hall.
Numata, M. (1961). Forest vegetation in the vicinity of Choshi. Coastal flora and vegetation at Choshi, Chiba Prefecture. IV. Bulletin of Choshi Marine Laboratory, Chiba
University, 3, 2848 (en Japones).
Rikken, M.G.J. y van Rijn, R.P.G. (1993). Soil pollution with heavy metals - an inquiry
into spatial variation, cost of mapping and the risk evaluation of copper, cadmium,
lead and zinc in the floodplains of the Meuse west of Stein, the Netherlands. Tesis
Doctoral, Dept. de Geografa Fsica, Universidad de Utrecht.
Ripley, B.D. (1977). Modelling spatial patterns (with discussion). Journal of the Royal
Statistical Society, Serie B, 39, 172212.
Strauss, D.J. (1975). A model for clustering. Biometrika, 63, 467475.
Wood, S.N. (2006). Generalized Additive Models: An Introduction with R. Chapman and
Hall-CRC, Boca Raton.
Al f
on
so
Ga
rc
aP
ere
z.
UN
E
quadrants
Aleatoriamente:
CSR
distancias
on Simple.
Regularmente: Procesos de Inhibici
Analizar
la
distribuci
o
n
Proceso
de
Poisson
no
homog
e
neo
Formando Clusters
Proceso
de
Cox.
Estudiar la densidad: n
umero de individuos por unidad de
area.