Beruflich Dokumente
Kultur Dokumente
libro)
#Todo modelo de Regresión Lineal Múltiple tiene una variable respuesta (y) y
#dos o más de dos variables explicativas (x1, x2, x3, …). La formulación en
#este caso del modelo sería:
#Las hipótesis del modelo son (sobre los errores): normalidad, incorrelación,
#homocedasticidad (varianza cte) y media cero.
#Los pasos fundamentales son los mismos que con el modelo de RLS:
#Empezamos:
13.78,15.67,15.67,15.98,16.5,16.87,17.26,17.28,17.87,19.13)
D16 <-c(9.3,12.1,13.3,13.4,14.2,12.8,14,13.5,14,13.8,13.6,14,
13.7,13.9,14.9,14.9,14.3,14.3,16.9,17.3)
HT <-c(89,90.07,95.08,98.03,99,91.05,105.6,100.8,94,93.09,89,
102,99,89.02,95.09,95.02,91.02,98.06,96.01,101)
VOL <-c(25.93,45.87,56.2,58.6,63.36,46.35,68.99,62.91,58.13,
59.79,56.2,66.16,62.18,57.01,65.62,65.03,66.74,73.38,82.87,95.71)
bosque<-data.frame(VOL=VOL,DBH=DBH,D16=D16,HT=HT)
#Análisis preliminar
#Gráfico
#Al haber definido la base de datos, podemos hacer un plot “de golpe” de todas
#las variables
plot(bosque)
#Numérico
#Correlaciones simples:
cor(bosque)
library(Rcmdr)
#Al darle al Intro se abrirá una nueva VENTANA. Debes cerrarla y seguir
#trabajando en R como habitualmente hacemos. Así que sigue escribiendo lo
#siguiente:
partial.cor(bosque)
fit=lm(VOL~DBH+D16+HT)
sfit=summary(fit)
sfit
#Call:
#Residuals:
#Coefficients:
#---
#Signif. codes: 0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1
confint(fit)
# 2.5 % 97.5 %
#Por ejemplo:
H0 : β1 0
#
H1 : β1 0
#p-valor= 0.132611 (tomado del summary de fit) > 0.05 No se rechaza H0.
#En consecuencia, es posible que el coeficiente beta 1 sea cero. Lo que
#significaría que el modelo nos está indicando que esa variable X (DBH) no es
#lo suficientemente útil, en el sentido de que la información contenida en esa
#variable para explicar VOL es posible que, en gran medida, se solape con la
#información que en este sentido contienen D16 y HT.
#Si hacemos el mismo contrate para beta2 y beta3 (para beta 0 no es
#importante hacerlo): concluimos en ambos casos que rechazamos que los
#coeficientes sean cero. En consecuencia, D16 y HT son variables importantes
#a la hora de explicar VOL. Este tipo de análisis está muy relacionado con las
#correlaciones parciales calculadas anteriormente.
cv=100*(3.095/mean(VOL))
cv
H0 : β1 β2 β3 0
#
H1 : Lo contrario
par(mfrow=c(2,2))
plot(fit)
#Normalidad
H0 : e N
#
H1 : Lo contrario
#Contraste de Shapiro-Wilks
shapiro.test(e)
#data: e
#El gráfico de residuos vs valores predichos de VOL deja algunas dudas sobre
#el cumplimiento de la hipótesis. Salgamos de dudas con un contraste de
#hipótesis:
H0 : Homocedasticidad
#
H1 : Heterocedasticidad
#data: fit
#Incorrelación
H0 : ρ 0
#
H1 : ρ 0
# El test de Durbin-Watson:
library(lmtest)
dwtest(fit,alternative="two.sided")
# Durbin-Watson test
#data: fit
#En definitiva, estamos ante un buen modelo donde parece que se cumplen
#todas las hipótesis.
Procedimientos secuenciales de selección de variables
step(fit)
Start: AIC=48.73
Call:
Coefficients:
dbh.0=20
d16.0=15
ht.0= 105
fit.d16.0<-predict(fit,data.frame(DBH=dbh.0,D16=d16.0,HT=ht.0),interval="prediction")
fit.d16.0
La estimación puntual del volumen de madera para un árbol con esas medidas
(en DBH, D16 y HT) sería 81.85626. Y el intervalo de confianza al 95% estaría
entre 71.43233 y 92.2802.
Transformación de la variable respuesta (método de Box-Cox)
(si fuese necesario)
library(MASS)
bc<-boxcox(fit,plotit=F)
lambda<-bc$x[which.max(bc$y)]
lambda
#=0.6
#Transformamos VOL en z
library(labstatR) # librería que calcula la media geométrica (cargala desde el menú Paquetes
#Instalar paquetes