práctico 6 - elegir mejor modelo

práctico 6 - elegir mejor modelo

by DUARTE ANDERSON -
Number of replies: 0

Muy buenas, hace un rato terminó la clase y no me dio tiempo de checkear esto. 

Terminé el práctico 6 y quería saber si mi procedimiento es correcto, porque yo empecé con un modelo más simple y parece ser que di de cara con el mejor modelo, modelo3. Luego, por lo que explicaron en clase, habría que empezar con un modelo lo más complejo posible e ir sacando variables. Así que hice eso, creé el modelo complejo al final y fui sacando variables hasta quedarme con mod_comp12. Al comparar ambos con anova(modelo3, mod_comp12) me dió que no hay diferencia significativa entre ambos. ¿Con cual me quedo? Yo puse que me quedaría con el más simple, modelo3 por lo de la parsimonia, pero realmente mod_comp12 toma en cuenta las interacciones, lo cual en clase mencionaron que era importante. Si saben responderme eso les agradezco. Les pego el script.

Muchas gracias.


attach(tabla_practico_6)

#visualización de los datos por separado

plot(nutriente1, crecimiento, pch=21, col="blue", bg="red")

plot(nutriente2, crecimiento, pch=21, col="blue", bg="red")

plot(nutriente3, crecimiento, pch=21, col="blue", bg="red")

plot(nutriente4, crecimiento, pch=21, col="blue", bg="red")


#Primer modelo, modelo lineal simple

modelo1 = lm(crecimiento~nutriente1+nutriente2+nutriente3+nutriente4)

summary(modelo1)


#quito las variables no significativas

modelo2 = update(modelo1,~.-nutriente3)

summary(modelo2)

modelo3 = update(modelo2,~.-nutriente4)

summary(modelo3)


#visualizo gráficos diagnóstico

par(mfrow=c(2,2))

plot(modelo3)


#visualizo interacciones entre las variables

library(ggplot2)


ggplot(tabla_practico_6, aes(x = nutriente1, y = nutriente2, color = crecimiento)) +

  geom_point(alpha = 1)+

  scale_colour_gradient(low = "blue", high = "red")


# A medida que aumenta la concentración de los nutrientes 1 y 2 

# aumenta el crecimiento de la planta


## Modelo más complejo: toma en cuenta todas las posibles interacciones entre las variables

mod_comp = lm(crecimiento~nutriente1*nutriente2*nutriente3*nutriente4)

anova(mod_comp)


#Voy quitando las variables no significativas

mod_comp2 = update(mod_comp,~.-nutriente3)

mod_comp3 = update(mod_comp2,~.-nutriente4)

mod_comp4 = update(mod_comp3,~. -nutriente1:nutriente2:nutriente3:nutriente4)

mod_comp5 = update(mod_comp4,~. -nutriente2:nutriente3:nutriente4)

mod_comp6 = update(mod_comp5,~. -nutriente1:nutriente3:nutriente4)

mod_comp7 = update(mod_comp6,~. -nutriente1:nutriente2:nutriente4)

mod_comp8 = update(mod_comp7,~. -nutriente1:nutriente2:nutriente3)

mod_comp9 = update(mod_comp8,~. -nutriente1:nutriente4)

mod_comp10 = update(mod_comp9,~. -nutriente1:nutriente3)

mod_comp11 = update(mod_comp10,~. -nutriente1:nutriente2)

#Modelo complejo final

mod_comp12 = update(mod_comp11,~. -nutriente2:nutriente3)


#Gráficos diagnósticos

par(mfrow=c(2,2))

plot(mod_comp12)

#R: mejor distribución de residuos y normalidad


#Comparación de los modelos: simple vs complejo

anova(modelo3, mod_comp12)

# No hay diferencia significativa entre el modelo3 (simple) y el modelo complejo


# CONCLUSIÓN: Me quedo con el más simple, el modelo3