Fecha
# 1. Crear una variable de agrupación basada en MEDV # (Se asume que MEDV está en miles de dólares) BostonHousing$Group <- ifelse(BostonHousing$MEDV > 30, "Superior", "Inferior") # Verificar el número de viviendas en cada grupo print(table(BostonHousing$Group))
## ## Inferior Superior ## 422 84
# 2. Calcular estadísticas descriptivas por grupo para las variables de interés library(dplyr) resumen <- BostonHousing %>% group_by(Group) %>% summarise( N = n(), mean_CRIM = mean(CRIM, na.rm=TRUE), sd_CRIM = sd(CRIM, na.rm=TRUE), mean_RM = mean(RM, na.rm=TRUE), sd_RM = sd(RM, na.rm=TRUE), mean_DIS = mean(DIS, na.rm=TRUE), sd_DIS = sd(DIS, na.rm=TRUE), mean_RAD = mean(RAD, na.rm=TRUE), sd_RAD = sd(RAD, na.rm=TRUE) ) print(resumen)
## # A tibble: 2 × 10 ## Group N mean_CRIM sd_CRIM mean_RM sd_RM mean_DIS sd_DIS mean_RAD sd_RAD ## <chr> <int> <dbl> <dbl> <dbl> <dbl> <dbl> <dbl> <dbl> <dbl> ## 1 Inferior 422 4.20 9.28 6.08 0.520 3.68 2.07 10.3 9.08 ## 2 Superior 84 0.686 1.68 7.29 0.628 4.36 2.22 5.69 5.01
# 3. Realizar pruebas t para comparar las medias entre los grupos test_crim <- t.test(CRIM ~ Group, data=BostonHousing) test_rm <- t.test(RM ~ Group, data=BostonHousing) test_dis <- t.test(DIS ~ Group, data=BostonHousing) test_rad <- t.test(RAD ~ Group, data=BostonHousing) # Mostrar resultados de las pruebas t print(test_crim)
## ## Welch Two Sample t-test ## ## data: CRIM by Group ## t = 7.201, df = 501.92, p-value = 2.199e-12 ## alternative hypothesis: true difference in means between group Inferior and group Superior is not equal to 0 ## 95 percent confidence interval: ## 2.552343 4.467669 ## sample estimates: ## mean in group Inferior mean in group Superior ## 4.1962123 0.6862062
print(test_rm)
## ## Welch Two Sample t-test ## ## data: RM by Group ## t = -16.56, df = 106.86, p-value < 2.2e-16 ## alternative hypothesis: true difference in means between group Inferior and group Superior is not equal to 0 ## 95 percent confidence interval: ## -1.354526 -1.064896 ## sample estimates: ## mean in group Inferior mean in group Superior ## 6.083813 7.293524
print(test_dis)
## ## Welch Two Sample t-test ## ## data: DIS by Group ## t = -2.5601, df = 113.35, p-value = 0.01178 ## alternative hypothesis: true difference in means between group Inferior and group Superior is not equal to 0 ## 95 percent confidence interval: ## -1.1922640 -0.1520052 ## sample estimates: ## mean in group Inferior mean in group Superior ## 3.683463 4.355598
print(test_rad)
## ## Welch Two Sample t-test ## ## data: RAD by Group ## t = 6.5817, df = 209.31, p-value = 3.673e-10 ## alternative hypothesis: true difference in means between group Inferior and group Superior is not equal to 0 ## 95 percent confidence interval: ## 3.241152 6.012967 ## sample estimates: ## mean in group Inferior mean in group Superior ## 10.317536 5.690476
El primer paso en nuestro análisis es comprender los datos. Para ello:
Dataset BostonHousing:
Contiene información de 506 áreas de Boston con 14 variables que describen tanto características de las viviendas como del entorno.
Variables Clave:
Incluyen tasas de criminalidad, características estructurales (como el número de habitaciones) y factores socioeconómicos (como el porcentaje de población de bajo estatus).
Objetivo del Análisis:
Identificar diferencias entre zonas y predecir el precio medio de la vivienda.
Comprender la estructura y el significado de cada variable es fundamental para diseñar modelos predictivos y tomar decisiones informadas.
Ejemplo 1: Calidad Educativa
Aunque contamos con el ratio alumno/profesor (PTRATIO), el dataset no incluye indicadores detallados sobre el desempeño o calidad de las escuelas locales, como puntajes de exámenes o tasas de graduación.
Ejemplo 2: Indicadores Económicos y de Infraestructura
No se encuentran datos sobre el costo de vida, calidad de servicios públicos o indicadores económicos que podrían influir en el valor de las viviendas.
Conociendo estas limitaciones en la información, ahora sí comenzaremos con el análisis propuesto.
Se realizaron pruebas de hipótesis para comparar dos grupos de viviendas: - Grupo Superior: Viviendas con MEDV ≥ 30. - Grupo Inferior: Viviendas con MEDV < 30.
Principales hallazgos:
Conclusión:
Estos resultados indican diferencias significativas en las condiciones del entorno, lo que respalda la hipótesis de que factores como la seguridad, el espacio habitable y la ubicación influyen en el valor de las viviendas.
Gráfica Comparativa
A continuación se muestran los boxplots de las variables CRIM, RM, DIS y RAD, comparando ambos grupos.
Se realizaron pruebas t para comparar dos grupos de viviendas (MEDV ≥ 30 y MEDV < 30) en las siguientes variables:
El Termómetro del Crimen (CRIM):
t = 7.201, p < 0.001
Conclusión: Las zonas con viviendas de menor valor presentan tasas de delincuencia significativamente mayores.
El Indicador de Espacio (RM):
t = -16.56, p < 0.001
Conclusión: Las viviendas de mayor valor tienen, en promedio, más habitaciones.
La Barrera Laboral (DIS):
t = -2.5601, p = 0.0118
Conclusión: Las viviendas de mayor valor se ubican a mayores distancias de centros de empleo.
El Índice Vial (RAD):
t = 6.5817, p < 0.001
Conclusión: Las zonas con viviendas de menor valor muestran mejor accesibilidad a carreteras.
Todos los resultados indican diferencias estadísticamente significativas entre los dos grupos.
A continuación, se presentan boxplots que ilustran las diferencias en las variables clave entre ambos grupos.
Se calculó el porcentaje de viviendas ubicadas en zonas con una proporción alumno/profesor (PTRATIO) inferior a 20 para dos grupos: - Grupo Superior (MEDV ≥ 30): 94.05% - Grupo Inferior (MEDV < 30): 53.55%
Se realizó la prueba de hipótesis con prop.test
:
Conclusión:
La diferencia entre ambos grupos es estadísticamente significativa, lo que sugiere que las viviendas de mayor valor se asocian a zonas con una mejor proporción alumno/profesor.
A continuación, se muestra un gráfico de barras comparando los porcentajes de viviendas con PTRATIO < 20 en ambos grupos.
En esta diapositiva presentamos una matriz de dispersión que compara el valor medio de la vivienda (MEDV) con tres predictores clave:
# Selección de las variables cuantitativas vars <- c("MEDV", "CRIM", "ZN", "INDUS", "NOX", "RM", "AGE", "DIS", "RAD", "TAX", "PTRATIO", "LSTAT") # Calcular la matriz de correlaciones cor_matrix <- cor(BostonHousing[, vars]) print(cor_matrix)
## MEDV CRIM ZN INDUS NOX RM ## MEDV 1.0000000 -0.3883046 0.3604453 -0.4837252 -0.4273208 0.6953599 ## CRIM -0.3883046 1.0000000 -0.2004692 0.4065834 0.4209717 -0.2192467 ## ZN 0.3604453 -0.2004692 1.0000000 -0.5338282 -0.5166037 0.3119906 ## INDUS -0.4837252 0.4065834 -0.5338282 1.0000000 0.7636514 -0.3916759 ## NOX -0.4273208 0.4209717 -0.5166037 0.7636514 1.0000000 -0.3021882 ## RM 0.6953599 -0.2192467 0.3119906 -0.3916759 -0.3021882 1.0000000 ## AGE -0.3769546 0.3527343 -0.5695373 0.6447785 0.7314701 -0.2402649 ## DIS 0.2499287 -0.3796701 0.6644082 -0.7080270 -0.7692301 0.2052462 ## RAD -0.3816262 0.6255051 -0.3119478 0.5951293 0.6114406 -0.2098467 ## TAX -0.4685359 0.5827643 -0.3145633 0.7207602 0.6680232 -0.2920478 ## PTRATIO -0.5077867 0.2899456 -0.3916785 0.3832476 0.1889327 -0.3555015 ## LSTAT -0.7376627 0.4556215 -0.4129946 0.6037997 0.5908789 -0.6138083 ## AGE DIS RAD TAX PTRATIO LSTAT ## MEDV -0.3769546 0.2499287 -0.3816262 -0.4685359 -0.5077867 -0.7376627 ## CRIM 0.3527343 -0.3796701 0.6255051 0.5827643 0.2899456 0.4556215 ## ZN -0.5695373 0.6644082 -0.3119478 -0.3145633 -0.3916785 -0.4129946 ## INDUS 0.6447785 -0.7080270 0.5951293 0.7207602 0.3832476 0.6037997 ## NOX 0.7314701 -0.7692301 0.6114406 0.6680232 0.1889327 0.5908789 ## RM -0.2402649 0.2052462 -0.2098467 -0.2920478 -0.3555015 -0.6138083 ## AGE 1.0000000 -0.7478805 0.4560225 0.5064556 0.2615150 0.6023385 ## DIS -0.7478805 1.0000000 -0.4945879 -0.5344316 -0.2324705 -0.4969958 ## RAD 0.4560225 -0.4945879 1.0000000 0.9102282 0.4647412 0.4886763 ## TAX 0.5064556 -0.5344316 0.9102282 1.0000000 0.4608530 0.5439934 ## PTRATIO 0.2615150 -0.2324705 0.4647412 0.4608530 1.0000000 0.3740443 ## LSTAT 0.6023385 -0.4969958 0.4886763 0.5439934 0.3740443 1.0000000
cor_MEDV <- cor_matrix["MEDV", ] print(cor_MEDV)
## MEDV CRIM ZN INDUS NOX RM AGE ## 1.0000000 -0.3883046 0.3604453 -0.4837252 -0.4273208 0.6953599 -0.3769546 ## DIS RAD TAX PTRATIO LSTAT ## 0.2499287 -0.3816262 -0.4685359 -0.5077867 -0.7376627
# Seleccionar las columnas para el gráfico data_plot <- BostonHousing[, c("MEDV", "RM", "LSTAT", "PTRATIO")] # Crear la matriz de dispersión pairs(data_plot, main = "Matriz de Dispersión: MEDV, RM, LSTAT y PTRATIO")
##
Modelo de Regresión Lineal Múltiple
Para predecir el valor medio de la vivienda (MEDV), se ajustó el siguiente modelo excluyendo la variable CAT.MEDV
:
## ## Call: ## lm(formula = MEDV ~ . - `CAT. MEDV`, data = BostonHousing) ## ## Residuals: ## Min 1Q Median 3Q Max ## -9.8156 -1.9975 -0.2335 1.6757 16.0932 ## ## Coefficients: ## Estimate Std. Error t value Pr(>|t|) ## (Intercept) 42.954458 3.816870 11.254 < 2e-16 *** ## CRIM -0.129678 0.025517 -5.082 5.32e-07 *** ## ZN -0.005113 0.011103 -0.460 0.645396 ## INDUS 0.114290 0.048362 2.363 0.018506 * ## CHAS1 2.359846 0.673138 3.506 0.000497 *** ## NOX -15.362403 2.983384 -5.149 3.79e-07 *** ## RM 1.058350 0.354782 2.983 0.002995 ** ## AGE -0.006162 0.010319 -0.597 0.550689 ## DIS -0.733482 0.161312 -4.547 6.86e-06 *** ## RAD 0.205249 0.051933 3.952 8.88e-05 *** ## TAX -0.009369 0.002944 -3.182 0.001554 ** ## PTRATIO -0.558002 0.104307 -5.350 1.35e-07 *** ## LSTAT -0.478377 0.039373 -12.150 < 2e-16 *** ## GroupSuperior 11.813994 0.647596 18.243 < 2e-16 *** ## --- ## Signif. codes: 0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1 ## ## Residual standard error: 3.709 on 492 degrees of freedom ## Multiple R-squared: 0.8415, Adjusted R-squared: 0.8373 ## F-statistic: 200.9 on 13 and 492 DF, p-value: < 2.2e-16
Para ilustrar el efecto de cada predictor, se construyó un diagrama de los coeficientes estimados y sus intervalos de confianza.
Se ajustó un modelo de regresión lineal múltiple utilizando únicamente los predictores significativos, es decir, excluyendo las variables no relevantes (por ejemplo, ZN, INDUS y AGE). El modelo final incluye:
CRIM, CHAS, NOX, RM, DIS, RAD, TAX, PTRATIO y LSTAT.
# Ajuste del modelo con solo los predictores significativos model_signif <- lm(MEDV ~ CRIM + CHAS + NOX + RM + DIS + RAD + TAX + PTRATIO + LSTAT, data = BostonHousing) summary(model_signif)
## ## Call: ## lm(formula = MEDV ~ CRIM + CHAS + NOX + RM + DIS + RAD + TAX + ## PTRATIO + LSTAT, data = BostonHousing) ## ## Residuals: ## Min 1Q Median 3Q Max ## -15.484 -2.873 -0.758 1.988 26.910 ## ## Coefficients: ## Estimate Std. Error t value Pr(>|t|) ## (Intercept) 42.186083 4.949616 8.523 < 2e-16 *** ## CRIM -0.111463 0.033122 -3.365 0.000824 *** ## CHAS1 2.866029 0.871597 3.288 0.001080 ** ## NOX -19.534523 3.582329 -5.453 7.82e-08 *** ## RM 3.875033 0.408957 9.475 < 2e-16 *** ## DIS -1.198939 0.164229 -7.300 1.15e-12 *** ## RAD 0.268458 0.064447 4.166 3.66e-05 *** ## TAX -0.010048 0.003376 -2.976 0.003060 ** ## PTRATIO -1.082001 0.123800 -8.740 < 2e-16 *** ## LSTAT -0.546013 0.047938 -11.390 < 2e-16 *** ## --- ## Signif. codes: 0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1 ## ## Residual standard error: 4.839 on 496 degrees of freedom ## Multiple R-squared: 0.7281, Adjusted R-squared: 0.7232 ## F-statistic: 147.6 on 9 and 496 DF, p-value: < 2.2e-16
## fit lwr upr ## 1 29.17879 19.63165 38.72592
Estas conclusiones integran los resultados de todo el trabajo realizado y respaldan la importancia de utilizar un enfoque basado en evidencia para entender y predecir el precio de las viviendas.
Por favor colocar las referencias en normas APA.