Arbres
Modelos de suavizado, aditivos y mixtos
Tema 3: GAM en la pr´ actica
Carmen Armero
13 de junio de 2011
Tema 3: GAM en la pr´actica Modelos de suavizado, aditivos y mixtos
Libreria mgcv
Arbres
Arbres
Libreria mgcv
I mgcv es una librer´ıa de R dise˜nada para trabajar con modelos aditivos generalizados, incluyendo modelos mixtos aditivos generalizados, GAMM.
I No es la ´unica libreria en R para trabajar este tipo de modelos:
I Libreria gss escrita por C. Gu.
I Libreria gam escrita por T. Hastie.
I La funci´on principal de mgcv es gam.
I La funci´on gam de la libreria mgcv es muy parecida a la funci´on glm. La diferencia principal es que las funciones gam incluyen funciones suaves, s( ) y te( ), para las que existen un gran n´umero de opciones disponibles que permiten controlar de forma autom´atica o directamente la suavidad del modelo.
I gam devuelve un objeto de clase ”gam”, que puede ser interrogado utilizando funciones como print, summary, anova, plot, predict, residuals etc.
I En este tema vamos a ir explorando las posibilidades de gam a trav´es de ejemplos, primero muy sencillos para ir, poco a poco, acerc´andonos a problemas mucho m´as realistas.
Tema 3: GAM en la pr´actica Modelos de suavizado, aditivos y mixtos
Ejemplo: Arbres, I
I Los siguientes datos son observaciones de la altura, circunferencia y volumen de 31 cerezos que hab´ıan sido talados previamente.
Circun Altura Volumen Circun Altura Volumen
8.3 70 10.3 8.6 65 10.3
8.8 63 10.2 10.5 72 16.4
10.7 81 18.8 10.8 83 19.7
11.0 66 15.6 11.0 75 18.2
11.1 80 22.6 11.2 75 19.9
11.3 79 24.2 11.4 76 21.0
11.4 76 21.4 11.7 69 21.3
12.0 75 19.1 12.9 74 22.2
12.9 85 33.8 13.3 86 27.4
13.7 71 25.7 13.8 64 24.9
14.0 78 34.5 14.2 80 31.7
14.5 74 36.3 16.0 72 38.3
16.3 77 42.6 17.3 81 55.4
17.5 82 55.7 17.9 80 58.3
18.0 80 51.5 18.0 80 51.0
20.6 87 77.0
Arbres
Ejemplo: Arbres, II
I Modelo :
(Volumeni| Circuni, Alturai) ∼ Gamma(µi, φ) log(µi) = f1(Circuni) + f2(Alturai) i = 1, . . . , n = 31
I Vamos a modelizar las funciones f1y f2a trav´es de una base de splines penalizada.
I Nota: La esperanza y varianza de una variable aleatoria Y con distribuci´on Gamma reparametrizada en t´erminos de su media µ y el par´ametro de escala φ, es E(Y ) = µ y Var(Y ) = µ2/φ.
Tema 3: GAM en la pr´actica Modelos de suavizado, aditivos y mixtos
Arbres, III
I La forma m´as sencilla de trabajar con gam es considerando todas sus opciones por defecto:
>library(mgcv)
>ct1 <- gam(Volumen ∼ s(Altura) + s(Circun), family=Gamma(link=log))
>ct1
Family: Gamma Link function: log
Formula: Volumen ∼ s(Altura) + s(Circun)
Estimated degrees of freedom: 1.0000 2.4222 total = 4.422254 GCV score: 0.008082356
Arbres
Arbres, IV
I >plot(ct1, residuals=TRUE)
65 7075 80 85
−0.50.00.51.0
Altura
s(Altura,1)
●
●●
●
●●
●
●
●
●
●
●●
●
●●
●
●
● ●
●
●
●
●
●
●●●
●●
●
8 12 16 20
−0.50.00.51.0
Circun
s(Circun,2.42)
●
●●
●●●●●
●●
●
●●
●
●
●
●
●
●
●
●
●
●
●●
●●
●
●●
●
I Gr´afica en la que se muestran los efectos estimados (lineas continuas) de cada una de las variables (Altura en la gr´afica 1 y Circun en la gr´afica 2) y las bandas de confianza al 95 %. Los puntos de cada gr´afica son los residuos parciales de cada observaci´on (que en el caso de la Altura y la observaci´on (i), ser´ıa el residuo de Pearson de la observaci´on i sumado a ˆf1(Alturai))
I Comentario de rug plots y consecuencias rectricci´on identificabilidad en la Altura.
Tema 3: GAM en la pr´actica Modelos de suavizado, aditivos y mixtos
Nota1: Residuos de Pearson en modelos GLM
I En un modelo GLM el residuo de Pearson correspondiente a la observaci´on yi se define como:
ˆ
eip= yi− ˆµi
pV (ˆµi)
siendo ˆµi el estimador de µi= E(Yi| X) y V (ˆµi) el estimador de V (µi) que se define como V (µi) = Var(Yi| X)/φ.
I Si el modelo ajustado es adecuado estos errores son aproximadamente normales con media 0 y varianza φ.
Arbres
Arbres V
I La opci´on por defecto de gam trabaja siempre con bases de splines de regresssion thin plate (las veremos en el siguiente tema). Vamos a considerar un nuevo modelo con una base de splines c´ubicos para la variable Altura y la variable Circun.
>ct2 <- gam(Volumen ∼ s(Altura, bs=‘‘cr’’) + s(Circun, bs=‘‘cr’’), family=Gamma(link=log))
>ct2
Family: Gamma Link function: log
Formula: Volumen ∼ s(Altura, bs = ‘‘cr’’) + s(Circun, bs = ‘‘cr’’) Estimated degrees of freedom: 1.0000 2.4188 total = 4.418778 GCV score: 0.008080514
I Podemos observar que no se han producido apenas cambios en el modelo ajustado. Este es un buen resultado aunque no siempre los resultados son tan poco dependientes de la base utilizada.
Tema 3: GAM en la pr´actica Modelos de suavizado, aditivos y mixtos
Arbres VI
I La opci´on de gam por defecto trabaja siempre con una base de dimension k=10.
Vamos a considerar un nuevo modelo con una base de splines c´ubicos de dimensi´on k=20 para la variable Circun y continuamos con la base de splines con la que trabaja gam por defecto para la variable Altura.
>ct3 <- gam(Volume ∼ s(Altura)+s(Circun, bs=‘‘cr’’, k=20),family=Gamma(link=log))
>ct3
Family: Gamma Link function: log
Formula: Volumen ∼ s(Altura) + s(Circun, bs=‘‘cr’’, k = 20) Estimated degrees of freedom: 1.0000 2.4243 total = 4.424292 GCV score: 0.008082974
I Trabajamos ahora con una base de mayor dimension por lo que estamos considerando inicialmente muchos m´as grados de libertad que si la base fuera de menor dimensi´on. Los resultados que hemos obtenido apenas cambian con respecto a los de los modelos anteriores. Esto no ocurre siempre.
Arbres
Arbres VII
I Cuando despues de las primeras valoraciones del modelo decidimos que el modelo es aceptable podemos profundizar en su an´alisis:
>summary(ct1) Family: Gamma Link function: log
Formula: Volumen ∼s(Altura) + s(Circun) Parametric coefficients:
Estimate Std. Error t value Pr(>|t|) (Intercept) 3.27570 0.01495 219.1 <2e-16 ***
Signif. codes: 0 ‘***’ 0.001 ‘**’ 0.01 ‘*’ 0.05 ‘.’ 0.1 ‘ ’ 1 Approximate significance of smooth terms:
edf Ref.df F p-value
s(Altura) 1.000 1.000 31.18 6.72e-06 ***
s(Circun) 2.422 3.044 218.32 < 2e-16 ***
Signif. codes: 0 ‘***’ 0.001 ‘**’ 0.01 ‘*’ 0.05 ‘.’ 0.1 ‘ ’ 1 R-sq.(adj) = 0.973 Deviance explained = 97.8 %
GCV score = 0.0080824 Scale est. = 0.0069294 n = 31
Tema 3: GAM en la pr´actica Modelos de suavizado, aditivos y mixtos
Arbres VIII
I Si queremos pvalores para valorar las variables predictoras podemos usar el comando anova:
> anova(ct1) Family: Gamma Link function: log
Formula: Volume ∼ s(Altura) + s(Circun) Approximate significance of smooth terms:
edf Ref.df F p-value
s(Altura) 1.000 1.000 31.18 6.72e-06 s(Circun) 2.422 3.044 218.32 < 2e-16
Arbres
Arbres IX
I Coeficientes estimados ˆβ
> coef(ct1) ]coeficientes estimados coef(ct1)
(Intercept) s(Altura).1 s(Altura).2 s(Altura).3 s(Altura).4 3.275702e+00 -1.112441e-07 1.524676e-07 -6.620913e-08 -1.227387e-07 s(Altura).5 s(Altura).6 s(Altura).7 s(Altura).8 s(Altura).9 -1.156879e-08 -1.250243e-07 4.029294e-08 6.359381e-07 1.013640e-01 s(Circun).1 s(Circun).2 s(Circun).3 s(Circun).4 s(Circun).5 1.139814e-02 4.257486e-02 1.125678e-02 3.178299e-02 1.477598e-02 s(Circun).6 s(Circun).7 s(Circun).8 s(Circun).9
2.938731e-02 3.638829e-03 1.920448e-01 4.405839e-01
Tema 3: GAM en la pr´actica Modelos de suavizado, aditivos y mixtos
Arbres X
I Matrix de varianzas-covarianzas de ˆβ
>vcov(ct1, freq=TRUE)
>Vcov <- vcov(ct1)
>Vcov[1:4,1:4]
(Intercept) s(Altura).1 s(Altura).2 s(Altura).3 (Intercept) 2.228777e-04 1.938385e-23 -5.369032e-23 7.371339e-24 s(Altura).1 1.938385e-23 1.172984e-08 1.944762e-09 -1.629145e-09 s(Altura).2 -5.369032e-23 1.944762e-09 2.797615e-08 -6.769112e-09 s(Altura).3 7.371339e-24 -1.629145e-09 -6.769112e-09 3.914123e-09
I predict(ct1) calcula el valor del predictor lineal correspondiente al modelo ajustado ct1 para los datos originales.
> predict(ct1)
1 2 3 4 5 6 7 8
2.371401 2.345052 2.349031 2.799305 2.979779 3.029477 2.789032 2.934573
9 10 11 12 13 14 15 16
3.032525 2.968667 3.050248 3.018526 3.018526 2.955080 3.100969 3.227069
17 18 19 20 21 22 23 24
3.404951 3.482821 3.301098 3.202953 3.459230 3.521116 3.467693 3.639770
25 26 27 28 29 30 31
3.758838 3.944671 3.983960 3.996895 4.008045 4.008045 4.397419
Arbres
Arbres XI
I Si queremos las predicciones en la escala de la variable respuesta:
>predict(ct1,type=‘‘response’’)
1 2 3 4 5 6 7 8
10.71239 10.43381 10.47541 16.43322 19.68346 20.68642 16.26527 18.81347
9 10 11 12 13 14 15 16
20.74956 19.46596 21.12058 20.46112 20.46112 19.20326 22.21948 25.20567
17 18 19 20 21 22 23 24
30.11283 32.55143 27.14244 24.60507 31.79249 33.82214 32.06269 38.08309
25 26 27 28 29 30 31
42.89854 51.65933 53.72941 54.42887 55.03916 55.03916 81.24090”
I >Volumenpre<- predict(ct1,type=‘‘response’’)
>plot(Volumen,Volumenpre ,col=‘‘red’’,pch=16, lty=1,lwd=1)
●●
●
●
●●
●
●●●●●●●
●
●
●
●
●
●
●
●
●
●
●
●
● ● ●
●
●
10 20 30 40 50 60 70
1020304050607080
Volumen
Volumenpre
Tema 3: GAM en la pr´actica Modelos de suavizado, aditivos y mixtos
Arbres XII
I El uso m´as importante de predict.gam es para predecir el predictor lineal del modelo para nuevos valores de las variables predictoras:
>]creamos un banco de datos con los nuevos valores de las variables predictoras
> pd <- data.frame(Altura=c(75,80),Circun=c(12,13))
> predict(ct1,newdata=pd) 1 2
3.101496 3.340104 ]predicciones
>predict(ct1,newdata=pd,type=‘‘response’’) 1 2
22.21948 28.20773 ]predicciones en escala de la v. respuesta I predict tiene distintos argumentos que pueden ser muy ´utiles
> predict(ct1,newdata=pd,se=TRUE)
$fit 1 2
3.101496 3.340104
$se.fit 1 2
Arbres
Arbres XIII
I Las predicciones tambi´en pueden realizarse en t´erminos de los elementos del modelo:
> predict(ct1,newdata=pd,se=TRUE,type=‘‘terms’’)
$fit
s(Altura) s(Circun) 1 -0.01617101 -0.1585618477 2 0.06468474 -0.0007909851
$se.fit
s(Altura) s(Circun) 1 0.002896558 0.01373333 2 0.011583819 0.01576311 attr(,‘‘constant’’)
(Intercept) 3.275702
I o seg´un la escala de la variable respuesta con predict(ct1,pd,type=‘‘response’’).
Tema 3: GAM en la pr´actica Modelos de suavizado, aditivos y mixtos
Arbres XV
I plot.gam tiene m´as opciones, por ejemplo:
>par(mfrow=c(1,2))
>plot(ct1,shade=TRUE,seWithMean=TRUE, scale=0)
65 70 75 80 85
−0.3−0.2−0.10.00.10.2
Altura
s(Altura,1)
8 12 16 20
−0.50.00.51.0
Circun
s(Circun,2.42)
Arbres
Arbres XVI
I A veces es conveniente visualizar la respuesta esperada en t´erminos de las dos variables predictoras:
>vis.gam(ct1,theta=30, type=‘‘response’’, ticktype=‘‘detailed’’)
Altur a 65
70 75
80 85
Circun 10
12 14
16 1820 response
20 40 60 80
Tema 3: GAM en la pr´actica Modelos de suavizado, aditivos y mixtos
Arbres XVII
I >vis.gam(ct1,theta=-45, type=‘‘response’’, ticktype=‘‘detailed’’)
Altur a
65 70
75 80
85
Circun
10 12 14 16 18 20 response
20 40 60 80
Arbres
Arbres XVIII
I >vis.gam(ct1,theta=30, type=‘‘response’’, ticktype=‘‘detailed’’, se=2)
Altur a 65
70 75
80 85
Circun 10
12 14
16 18
20 response
20 40 60 80
red/green are +/− 2 s.e.
Altur a 65
70 75
80 85
Circun 10
12 14
16 18
20 response
20 40 60 80
red/green are +/− 2 s.e.
Altur a 65
70 75
80 85
Circun 10
12 14
16 18
20 response
20 40 60 80
red/green are +/− 2 s.e.
Tema 3: GAM en la pr´actica Modelos de suavizado, aditivos y mixtos
Arbres XIX
I vis.gam(ct1,plot.type=‘‘contour’’, main=‘‘Volumen’’, type=‘‘response’’)
65 70 75 80 85
101214161820
Volumen
Circun
10
20 30
40 50
60 70 80
Arbres
Arbres XX
I gam no s´olo implementa modelos que contienen funciones suaves de un ´unico predictor, sino que, en general, puede trabajar con funciones suaves de cualquier n´umero de predictores.
I Con la formula formula s( ) y utilizando bases de tipo tp (thin plate regression splines) o ts (thin plate regression splines con encogimiento) generamos funciones suaves isotr´opicas de varias variables predictoras,
I Con los t´erminos en te( ) generamos funciones suaves de varias variables predictoras a partir de productos tensoriales de cualquiera de las bases que utilizamos con s( ) (incluyendo mixturas de bases dferentes).
Tema 3: GAM en la pr´actica Modelos de suavizado, aditivos y mixtos
Arbres XXI
I > ct5<-gam(Volumen ∼ s(Altura, Circun, k=25), family=Gamma(link=log))
> ct5
Family: Gamma Link function: log
Formula: Volumen ∼ s(Altura, Circun, k = 25)
Estimated degrees of freedom: 4.7911 total = 5.791102 GCV score: 0.009357594
Arbres
Arbres XXII
I > vis.gam(ct5,theta=30, type=‘‘response’’, ticktype=‘‘detailed’’)
>vis.gam(ct5,theta=-45,type=‘‘response’’, ticktype=‘‘detailed’’)
Altur a 65
70 75
80 85
Circun 10
12 14
16 18
20 response
20 40 60 80
Altur a
65 70
75 80
85 Circun
10 12 14 16 18 20 response
20 40 60 80
Tema 3: GAM en la pr´actica Modelos de suavizado, aditivos y mixtos
Arbres XXIII
I >vis.gam(ct5,plot.type=‘‘contour’’, main=‘‘Volumen’’, type=‘‘response’’)
65 70 75 80 85
101214161820
Volumen
Circun
10 20 30 40 50 60
70 80
Arbres
Arbres XXIV
I > plot(ct5, too.far=0.15, pch=16, lty=1,lwd=1)
−0.8
−0.6
−0.4 −0.2
0 0.2 0.4
0.6 0.8
1
s(Altura,Circun,4.79)
65 70 75 80 85
8101214161820
Altura
Circun
−0.8 −0.6 −0.4
−0.2 0
0.2
0.2 0.4
0.4 0.6
0.8 1
1 1.2
−1se
−1
−0.8
−0.6 −0.4
−0.2 0
0 0.2 0.4
0.6 0.8 1
+1se
●
● ●
● ● ●
● ● ●●●●● ●●
● ●
●
● ● ● ● ●
● ●
●●
●●
●
●
Tema 3: GAM en la pr´actica Modelos de suavizado, aditivos y mixtos
Arbres XXV
I >summary(ct5) Family: Gamma Link function: log
Formula: Volumen ∼ s(Altura, Circun, k = 25) Parametric coefficients:
Estimate Std. Error t value Pr(>|t|) (Intercept) 3.27583 0.01567 209.1 <2e-16 ***
Signif. codes: 0 ‘***’ 0.001 ‘**’ 0.01 ‘*’ 0.05 ‘.’ 0.1 ‘ ’ 1 Approximate significance of smooth terms:
edf Ref.df F p-value
s(Altura,Circun) 4.791 6.487 164.1 <2e-16 ***
Signif. codes: 0 ‘***’ 0.001 ‘**’ 0.01 ‘*’ 0.05 ‘.’ 0.1 ‘ ’ 1 R-sq.(adj) = 0.966 Deviance explained = 97.7 %
GCV score = 0.0093576 Scale est. = 0.0076095 n = 31
Arbres
Arbres XXVI
I > coef(ct5)
(Intercept) s(Altura,Circun).1 s(Altura,Circun).2 s(Altura,Circun).3
3.275825710 0.024797716 0.015097397 -0.049242973
s(Altura,Circun).4 s(Altura,Circun).5 s(Altura,Circun).6 s(Altura,Circun).7
0.042727022 0.010167740 0.037397814 -0.051562671
s(Altura,Circun).8 s(Altura,Circun).9 s(Altura,Circun).10 s(Altura,Circun).11
0.035617670 0.051394597 -0.044580627 -0.002112144
s(Altura,Circun).12 s(Altura,Circun).13 s(Altura,Circun).14 s(Altura,Circun).15
0.033187604 -0.035813839 0.041685473 -0.008773179
s(Altura,Circun).16 s(Altura,Circun).17 s(Altura,Circun).18 s(Altura,Circun).19
0.010772031 -0.020153786 0.010458201 0.029539342
s(Altura,Circun).20 s(Altura,Circun).21 s(Altura,Circun).22 s(Altura,Circun).23
-0.015912034 0.038209121 0.340294952 0.080732511
s(Altura,Circun).24
0.455764006 ”
Tema 3: GAM en la pr´actica Modelos de suavizado, aditivos y mixtos
Arbres XXVII
I > ct6<-gam(Volumen ∼ te(Altura, Circun), family=Gamma(link=log))
> ct6
Family: Gamma Link function: log
Formula: Volumen ∼ te(Altura, Circun)
Estimated degrees of freedom: 3 total = 4.000007 GCV score: 0.008197078
Arbres
Arbres XXVIII
I > vis.gam(ct6,theta=30, type=‘‘response’’, ticktype=‘‘detailed’’)
>vis.gam(ct6,theta=-45,type=‘‘response’’, ticktype=‘‘detailed’’)
Altur a 65
70 75
80 85
Circun 10
12 14
16 18
20 response
20 40 60 80
Altur a
65 70
75 80
85 Circun
10 12 14 16 18 20 response
20 40 60 80
Tema 3: GAM en la pr´actica Modelos de suavizado, aditivos y mixtos
Arbres XXIX
I >vis.gam(ct6,plot.type=‘‘contour’’, main=‘‘Volumen’’, type=‘‘response’’)
65 70 75 80 85
101214161820
Volumen
Circun
10
20 30
40 50
60 70
80
Arbres
Arbres XXX
I > plot(ct6, too.far=0.15, pch=16, lty=1,lwd=1)
−1 −0.8 −0.6 −0.4 −0.2 0 0.2
0.2 0.4 0.6
0.8
1
te(Altura,Circun,3)
65 70 75 80 85
8101214161820
Altura
Circun
−0.8 −0.6 −0.4 −0.2 0 0.2
0.2 0.4
0.4 0.6
0.8
1 1
−1se
−1 −0.8 −0.6
−0.4 −0.2 0
0.2
0.2 0.4
0.6 0.8
1
+1se
●
● ●
● ● ●
● ● ●●●●● ●●
● ●
●
● ● ● ● ●
● ●
●●
●●
●
●
Tema 3: GAM en la pr´actica Modelos de suavizado, aditivos y mixtos
Arbres XXXI
I >summary(ct6) Family: Gamma Link function: log
Formula: Volumen ∼ s(Altura, Circun, k = 25) Parametric coefficients:
Estimate Std. Error t value Pr(>|t|) (Intercept) 3.27584 0.01518 215.9 <2e-16 ***
Signif. codes: 0 ‘***’ 0.001 ‘**’ 0.01 ‘*’ 0.05 ‘.’ 0.1 ‘ ’ 1 Approximate significance of smooth terms:
edf Ref.df F p-value
s(Altura,Circun) 3 3 379.4 <2e-16 ***
Signif. codes: 0 ‘***’ 0.001 ‘**’ 0.01 ‘*’ 0.05 ‘.’ 0.1 ‘ ’ 1 R-sq.(adj) = 0.973 Deviance explained = 97.7 %
GCV score = 0.0081971 Scale est. = 0.0071394 n = 31
Arbres
Arbres XXXII
I >summary(ct6) Family: Gamma Link function: log
Formula: Volumen ∼ s(Altura, Circun, k = 25) Parametric coefficients:
Estimate Std. Error t value Pr(>|t|) (Intercept) 3.27583 0.01567 209.1 <2e-16 ***
Signif. codes: 0 ‘***’ 0.001 ‘**’ 0.01 ‘*’ 0.05 ‘.’ 0.1 ‘ ’ 1 Approximate significance of smooth terms:
edf Ref.df F p-value
s(Altura,Circun) 4.791 6.487 164.1 <2e-16 ***
Signif. codes: 0 ‘***’ 0.001 ‘**’ 0.01 ‘*’ 0.05 ‘.’ 0.1 ‘ ’ 1 R-sq.(adj) = 0.966 Deviance explained = 97.7 %
GCV score = 0.0093576 Scale est. = 0.0076095 n = 31
Tema 3: GAM en la pr´actica Modelos de suavizado, aditivos y mixtos
Arbres XXXIII
I > coef(ct6)
(Intercept) te(Altura,Circun).1 te(Altura,Circun).2 te(Altura,Circun).3
3.27584081 -0.48722641 -0.17802052 0.22767424
te(Altura,Circun).4 te(Altura,Circun).5 te(Altura,Circun).6 te(Altura,Circun).7
1.18268585 -0.74227707 -0.20112453 0.02727582
te(Altura,Circun).8 te(Altura,Circun).9 te(Altura,Circun).10 te(Altura,Circun).11
0.37864535 1.15533932 -0.74256607 0.12480578
te(Altura,Circun).12 te(Altura,Circun).13 te(Altura,Circun).14 te(Altura,Circun).15
0.15677625 0.60104467 1.15993118 -0.58797242
te(Altura,Circun).16 te(Altura,Circun).17 te(Altura,Circun).18 te(Altura,Circun).19
0.13481962 -0.07421944 0.90242210 1.25417946
te(Altura,Circun).20 te(Altura,Circun).21 te(Altura,Circun).22 te(Altura,Circun).23
-0.43586154 -0.08760196 0.25913225 0.42806927
te(Altura,Circun).24
1.18244028 ”
Arbres
Arbres XXXIV
I Vamos a considerar ahora que la Altura se expresa como una variable categ´orica con tres categor´ıas: ´arbol peque˜no, mediano y grande.
I >arbres$Hclass<-factor(floor(arbres$Altura/10)-5, labels=c(‘‘peque~no’’,‘‘mediano’’, ‘‘grande’’))
>arbres$Hclass
mediano peque~no peque~no mediano grande grande peque~no mediano grande mediano mediano mediano mediano peque~no mediano mediano grande grande mediano peque~no mediano grande mediano mediano mediano grande grande grande grande grande grande
Levels: peque~no mediano grande
I >ct7<-gam(Volumen ∼ Hclass+s(Circun), family=Gamma(link=log),data=arbres)
>ct7
Family: Gamma Link function: log
Formula: Volumen ∼ Hclass + s(Circun)
Estimated degrees of freedom: 2.4440 total = 5.444047 GCV score: 0.01207541
Tema 3: GAM en la pr´actica Modelos de suavizado, aditivos y mixtos
Arbres XXXVI
I >anova(ct7) Family: Gamma Link function: log Formula:
Volumen ∼ Hclass + s(Circun) Parametric Terms:
df F p-value
Hclass 2 6.965 0.00385
Approximate significance of smooth terms:
edf Ref.df F p-value
s(Circun) 2.444 3.076 156.2 <2e-16
Arbres
Arbres XXXVII
I > vis.gam(ct7,theta=30, type=‘‘response’’, ticktype=‘‘detailed’’)
>vis.gam(ct7,theta=-45,type=‘‘response’’, ticktype=‘‘detailed’’)
Hclass 0.51.0
1.5 2.0
2.5 3.0
3.5 Circun 10
12 14
16 18
20 response
20 40 60
Hclass 0.5
1.0 1.5
2.0 2.5
3.0 3.5 Circun
10 12 14 16 18 20 response
20 40 60
Tema 3: GAM en la pr´actica Modelos de suavizado, aditivos y mixtos
Arbres XXXVIII
I >vis.gam(ct7,plot.type=‘‘contour’’, main=‘‘Volumen’’, type=‘‘response’’)
101214161820
Volumen
Circun
10 15 20 25 30 35 40 45 50
55 60
65 70
75
Arbres
Arbres XXXIX
I >summary(ct7) Family: Gamma Link function: log Formula:
Volumen ∼ Hclass + s(Circun) Parametric coefficients:
Estimate Std. Error t value Pr(>|t|) (Intercept) 3.12722 0.04841 64.593 < 2e-16 ***
Hclassmediano 0.13415 0.05469 2.453 0.021332 * Hclassgrande 0.23000 0.06180 3.722 0.000982 ***
Signif. codes: 0 ‘***’ 0.001 ‘**’ 0.01 ‘*’ 0.05 ‘.’ 0.1 ‘ ’ 1 Approximate significance of smooth terms:
edf Ref.df F p-value
s(Circun) 2.444 3.076 156.2 <2e-16 ***
Signif. codes: 0 ‘***’ 0.001 ‘**’ 0.01 ‘*’ 0.05 ‘.’ 0.1 ‘ ’ 1 R-sq.(adj) = 0.967 Deviance explained = 96.9 %
GCV score = 0.012075 Scale est. = 0.0099548 n = 31
Tema 3: GAM en la pr´actica Modelos de suavizado, aditivos y mixtos
Arbres XL
I >plot(ct7,all.terms=T)
8 12 16 20
−1.0−0.50.00.51.0
Circun
s(Circun,2.44) 0.00.10.20.3
Hclass
Partial for Hclass
pequeño grande
Arbres
Arbres XLI
I > AIC(ct1,ct2,ct3,ct5,ct6,ct7)
df AIC
ct1 5.422254 142.8559 ct2 5.418778 142.8500 ct3 5.424292 142.8576 ct5 6.791102 146.8582 ct6 5.000007 143.4271 ct7 6.444047 154.9267
Tema 3: GAM en la pr´actica Modelos de suavizado, aditivos y mixtos