Visualización de los datos :
library(readxl)
data <- read_excel("base de datos.xlsx")
data |> head()
Se va analizar la relación entre 2 variables : medv , rm
medv : Valor mediano de las casas ocupadas por el dueño en unidades de $1000s
rm : Promedio de habitaciones por vivienda
Se busca predecir el valor de la vivienda en función del porcentaje de habitaciones por vivienda
y <- data$medv
x <- data$rm
modelo <- lm(y~x)
modelo |> coef()
## (Intercept) x
## -34.670621 9.102109
Donde el \(\widehat{\beta _{0}}\) = -34.671 y \(\widehat{\beta _{1}}\) = 9.102. Con estos datos podemos armar la ecuación de la regresión lineal: \[\widehat{y} = -34.671 + 9.102x\]
Donde el \(\widehat{\beta _{1}}\) significa que si el porcentaje de habitantes por vivienda es incrementa en 1% , entonces el valor promedio mediano de las casas ocupadas aumenta en 9.102 unidades
Los coeficientes estiamdos de una regresión son estadísticos y siguen una distribución T
modelo |> confint(level=0.90)
## 5 % 95 %
## (Intercept) -39.037185 -30.304057
## x 8.411602 9.792616
En este caso utilizamos un nivel de significancia de 90% lo cual el intervalo de confianza para \(\beta_{1}\) es 8.411602 \(\leq\) \(\beta_{1}\) \(\leq\) 9.792616
Dado que el intervalo de confianza es de 90% , en 90 de cada 100 casos , los intervalos como 8.411602 ≤ \(\beta_{1}\) ≤ 9.792616 contendrán el valor de \(\beta_{1}\)
\(H_{0}\): \(\beta_{1}\) = 0 ( El porcentaje de habitantes por vivienda no influye en el valor mediano de las casas ocupadas por el dueño )
\(H_{0}\): \(\beta_{1}\neq\) 0 (El porcentaje de habitantes por vivienda influye en el valor mediano de las casas ocupadas por el dueño)
modelo |> aov() |> summary()
## Df Sum Sq Mean Sq F value Pr(>F)
## x 1 20654 20654 471.8 <2e-16 ***
## Residuals 504 22062 44
## ---
## Signif. codes: 0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1
El punto crítico para esta prueba es \(F_{(0.95,1,504)}\) = 3.859975 y dado que \(F_{cal}\) = 471.8 > \(F_{(0.95,1,504)}\) = 3.859975 , se rechaza \(H_{0}\) por lo tanto al nivel de 0.05 de significancia podemos indicar que el valor mediano de las casas ocupadas por el dueño depende del porcentaje de habitantes por vivienda
Otra manera de concluir es: P-valor < 0.05 , Se rechaza \(H_{0}\)
¿Un incremento del 1% de porcentaje de habitantes por vivienda provocará un decaimiento del valor mediano de las casas ocupadas por el dueño en más de 0.70 unidades?
\(H_{0} : B_{1}\geq -0.70\)
\(H_{0} : B_{1} < -0.70\)
\(\alpha\) = 0.05
\(t_{cal} = \frac{\widehat{\beta _{1}}-\beta_{0}}{S_{\widehat{\beta_{1}}}}\) = \(\frac{9.102 - (-0.70)}{0.419}\) = 23.39379475
En este caso no se rechaza \(H_{0}\) , debido a que \(t_{cal}\) = 23.39379475 > \(t_{(0.05,504)}\) = −1.6479
Podemos concluir que por cada incremento del 1% del porcentaje de habitantes por vivienda no provoca un decaimiento en más de 0.70 unidades en el valor mediano de las casas ocupadas por el dueño
predConf<-predict(modelo,interval="confidence",level=0.95)
ICMeanY<-cbind(x, y,predConf)
head(ICMeanY)
## x y fit lwr upr
## 1 6.575 24.0 25.17575 24.55039 25.80110
## 2 6.421 21.6 23.77402 23.18536 24.36269
## 3 7.185 34.7 30.72803 29.78817 31.66790
## 4 6.998 33.4 29.02594 28.20203 29.84984
## 5 7.147 36.2 30.38215 29.46676 31.29755
## 6 6.430 28.7 23.85594 23.26582 24.44606
Por ejemplo para \(x_{0}\) = 6.575 se obtiene el intervalo de confianza 24.55039 ≤ \(\frac{\mu_{y}}{X}\)≤ 25.80110
Esto es, si el porcentaje de habitantes por vivienda es de 6.575%, se estima que en promedio el valor mediano de las casas ocupadas por el dueño se encuentre entre 24.55039 y 25.80110
Tambien para un valor específico de xo se puede hacer la estimación; por ejemplo para \(x_{0}\) = 14.5
modelo |> predict(data.frame(x=14.5),
interval = "confidence",
level = 0.95)
## fit lwr upr
## 1 97.30996 90.52199 104.0979
Lo que significa que para \(x_{0}\) = 14.5 se obtiene el intervalo de confianza 90.52199 ≤ \(\frac{\mu_{y}}{X}\)≤ 104.0979
Esto es, si el porcentaje de población en condición de pobreza es de 14.5%,se estima que en promedio el valor mediano de las casas ocupadas por el dueño se encuentre entree 90.52199 y 104.0979
Vamos a estimar el valor de la media para cada valor de x que se encuentra en la data que estamos utilizando y además también con el siguiente código nos da su intervalo de confianza para cada caso
S<-data
predY<-predict(modelo,S,interval="prediction",level=0.95)
IPY<-cbind(x, y,predY)
head(IPY)
## x y fit lwr upr
## 1 6.575 24.0 25.17575 12.16206 38.18943
## 2 6.421 21.6 23.77402 10.76205 36.78599
## 3 7.185 34.7 30.72803 17.69545 43.76062
## 4 6.998 33.4 29.02594 16.00120 42.05067
## 5 7.147 36.2 30.38215 17.35131 43.41299
## 6 6.430 28.7 23.85594 10.84390 36.86798
Por ejemplo para \(x_{0}\) = 6.421 se obtiene un intervalo de confianza de < 10.76205 ≤ \(\mu_{y}\) ≤ 36.78599 >
Esto si el porcentaje de habitantes por vivienda es de 6.421% , se estima que en promedio el valor mediano de las casas ocupdas por el dueño se encuentre entre 10.76205 y 36.78599
x <- data.frame(x=7.185)
predict <- predict(modelo,x,interval = "prediction",level=0.90)
cbind(x,predict)
para un \(x_{0}\) = 7.185 se obtiene un intervalo de confianza de < 19.79692 ≤ \(\mu_{y}\) ≤ 41.65915 . Si el porcentaje de pobalción en condición de pobreza es de 7.185% , se estima que en pormedio el valor mediano de las casas ocupadas por el dueño se encuentre entre 19.79692 y 41.65915