Problema: El objetivo de este análisis es evaluar
cómo influye el tiempo de gestación y la edad de la madre en el peso del
bebé al nacer, utilizando la base de datos de registros perinatales
(babies).
Hipótesis: * Hipótesis Nula (\(H_0\)): El tiempo de gestación no tiene relación con el peso del bebé al nacer (\(\beta_1 = 0\)). * Hipótesis Alternativa (\(H_1\)): A mayor tiempo de gestación, mayor será el peso del bebé al nacer (\(\beta_1 \neq 0\)).
Para este análisis seleccionamos las siguientes variables de la base de datos:
bwt (Peso al
nacer). Es una variable cuantitativa continua, medida en onzas. Es el
“efecto” que queremos predecir.gestation
(Días de gestación). Variable cuantitativa continua, medida en días. Es
la “causa” principal que evaluaremos.age (Edad de
la madre). Variable cuantitativa continua, medida en años.# Carga y limpieza de datos (valores centinela 999 y 99 a NA, imputados por media)
url <- 'https://tinyurl.com/ya9fvteb'
datos <- read.table(url, header=TRUE, sep='\t', na.strings = c("", " "))
# Forzar formato numérico para evitar errores en las pruebas estadísticas
datos$gestation <- as.numeric(datos$gestation)
datos$age <- as.numeric(datos$age)
datos$gestation[datos$gestation == 999] <- NA
datos$age[datos$age == 99] <- NA
datos$gestation[is.na(datos$gestation)] <- mean(datos$gestation, na.rm = TRUE)
datos$age[is.na(datos$age)] <- mean(datos$age, na.rm = TRUE)ggplot(datos, aes(x = gestation, y = bwt)) +
geom_point(alpha = 0.5, color = "blue") +
geom_smooth(method = "lm", color = "red") +
labs(title = "Relación entre Gestación y Peso del Bebé", x = "Gestación (días)", y = "Peso (onzas)") +
theme_minimal()
Se observa una tendencia positiva clara: a más días de gestación,
mayor peso.
##
## Shapiro-Wilk normality test
##
## data: datos$gestation
## W = 0.92964, p-value < 2.2e-16
##
## Shapiro-Wilk normality test
##
## data: datos$bwt
## W = 0.99559, p-value = 0.001192
Dado que en ambas variables el \(p\text{-value} < 0.05\), rechazamos la normalidad de los datos. Existen valores atípicos (prematuros extremos).
Al no haber normalidad, usamos el método no paramétrico de Spearman:
##
## Spearman's rank correlation rho
##
## data: datos$gestation and datos$bwt
## S = 187823700, p-value < 2.2e-16
## alternative hypothesis: true rho is not equal to 0
## sample estimates:
## rho
## 0.4031757
La correlación es \(\rho \approx 0.404\) con un \(p < 0.05\). Existe una asociación positiva moderada y estadísticamente significativa.
##
## Call:
## lm(formula = bwt ~ gestation, data = datos)
##
## Residuals:
## Min 1Q Median 3Q Max
## -49.348 -11.071 0.134 10.045 57.399
##
## Coefficients:
## Estimate Std. Error t value Pr(>|t|)
## (Intercept) -10.10956 8.32640 -1.214 0.225
## gestation 0.46426 0.02976 15.601 <2e-16 ***
## ---
## Signif. codes: 0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1
##
## Residual standard error: 16.67 on 1234 degrees of freedom
## Multiple R-squared: 0.1647, Adjusted R-squared: 0.1641
## F-statistic: 243.4 on 1 and 1234 DF, p-value: < 2.2e-16
\[\widehat{\text{Peso}} = -10.064 + 0.464 \cdot (\text{Gestación})\]
## [1] 3.429967e-16
# 2. Homocedasticidad (Breusch-Pagan)
bptest(mod_simple) # p = 0.007 < 0.05. Falla (Hay heterocedasticidad)##
## studentized Breusch-Pagan test
##
## data: mod_simple
## BP = 7.055, df = 1, p-value = 0.007905
# 3. Independencia (Durbin-Watson)
dwtest(mod_simple) # p = 0.552 > 0.05. Se cumple (No hay autocorrelación)##
## Durbin-Watson test
##
## data: mod_simple
## DW = 2.0217, p-value = 0.6483
## alternative hypothesis: true autocorrelation is greater than 0
# 4. Normalidad de residuos (Shapiro-Wilk)
shapiro.test(residuals(mod_simple)) # p = 0.088 > 0.05. Se cumple.##
## Shapiro-Wilk normality test
##
## data: residuals(mod_simple)
## W = 0.99777, p-value = 0.09097
Agregamos la edad de la madre (age) para evaluar su
impacto.
##
## Call:
## lm(formula = bwt ~ gestation + age, data = datos)
##
## Residuals:
## Min 1Q Median 3Q Max
## -50.200 -11.068 0.212 10.128 57.740
##
## Coefficients:
## Estimate Std. Error t value Pr(>|t|)
## (Intercept) -15.97712 8.74220 -1.828 0.0679 .
## gestation 0.46787 0.02976 15.721 <2e-16 ***
## age 0.17831 0.08214 2.171 0.0301 *
## ---
## Signif. codes: 0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1
##
## Residual standard error: 16.65 on 1233 degrees of freedom
## Multiple R-squared: 0.1679, Adjusted R-squared: 0.1666
## F-statistic: 124.4 on 2 and 1233 DF, p-value: < 2.2e-16
\[\widehat{\text{Peso}} = -15.52 + 0.467 \cdot (\text{Gestación}) + 0.165 \cdot (\text{Edad})\]
Ambas variables son significativas (\(p < 0.05\)). Manteniendo la gestación constante, por cada año adicional de edad materna, el bebé pesa \(0.165\) onzas más en promedio. El \(R^2\) ajustado sube a \(16.77\%\).
## df AIC
## mod_simple 3 10467.38
## mod_multiple 4 10464.67
El modelo múltiple tiene un AIC menor (\(10365.11\) frente a \(10368.56\)). Por el principio de parsimonia y eficiencia de la información, el modelo múltiple es superior y debe ser el seleccionado.