Los contrastes de hipótesis son procedimientos estadísticos que permiten tomar decisiones sobre parámetros poblacionales utilizando información muestral.
Rechazar H0 siendo verdadera.
No rechazar H0 siendo falsa.
Potencia = 1 - β.
| Parámetro | Descripción |
|---|---|
| μ | Media |
| p | Proporción |
| σ² | Varianza |
| α | Nivel de significancia |
| β | Error Tipo II |
| n | Tamaño muestral |
| p-valor | Evidencia contra H0 |
Determinar si una vacuna supera una eficacia del 80%.
set.seed(123)
n <- 1000
vacuna <- data.frame(
edad = round(rnorm(n,45,15)),
sexo = sample(c("Hombre","Mujer"), n, replace=TRUE),
comorbilidad = sample(c("Si","No"), n, replace=TRUE, prob=c(0.3,0.7)),
inmune = c(rep(1,860), rep(0,140))
)
head(vacuna)
## edad sexo comorbilidad inmune
## 1 37 Hombre No 1
## 2 42 Hombre Si 1
## 3 68 Hombre No 1
## 4 46 Mujer No 1
## 5 47 Mujer No 1
## 6 71 Hombre No 1
summary(vacuna$edad)
## Min. 1st Qu. Median Mean 3rd Qu. Max.
## 3.00 36.00 45.00 45.26 55.00 94.00
table(vacuna$sexo)
##
## Hombre Mujer
## 516 484
table(vacuna$comorbilidad)
##
## No Si
## 694 306
prop.table(table(vacuna$inmune))
##
## 0 1
## 0.14 0.86
ggplot(vacuna,aes(edad))+
geom_histogram(bins=20)+
labs(title="Distribución de edades")
prop.test(
x=sum(vacuna$inmune),
n=nrow(vacuna),
p=0.80,
alternative="greater",
correct=FALSE
)
##
## 1-sample proportions test without continuity correction
##
## data: sum(vacuna$inmune) out of nrow(vacuna), null probability 0.8
## X-squared = 22.5, df = 1, p-value = 1.051e-06
## alternative hypothesis: true p is greater than 0.8
## 95 percent confidence interval:
## 0.8409784 1.0000000
## sample estimates:
## p
## 0.86
binom.test(
sum(vacuna$inmune),
nrow(vacuna),
p=0.80,
alternative="greater"
)
##
## Exact binomial test
##
## data: sum(vacuna$inmune) and nrow(vacuna)
## number of successes = 860, number of trials = 1000, p-value = 4.791e-07
## alternative hypothesis: true probability of success is greater than 0.8
## 95 percent confidence interval:
## 0.840664 1.000000
## sample estimates:
## probability of success
## 0.86
| Método | Ventaja | Desventaja |
|---|---|---|
| Z | Rápido | Requiere muestras grandes |
| Binomial | Preciso | Mayor costo |
| Bootstrap | Flexible | Simulación intensiva |
Determinar si la eficacia poblacional supera el 80%.
Comparar supervivencia entre tratamiento nuevo y tradicional.
set.seed(456)
tratamiento <- data.frame(
edad = round(rnorm(400,55,12)),
sexo = sample(c("Hombre","Mujer"),400,replace=TRUE),
hipertension = sample(c("Si","No"),400,replace=TRUE,prob=c(0.35,0.65)),
grupo = c(rep("Nuevo",200),rep("Tradicional",200)),
supervivencia = c(rep(1,184),rep(0,16),rep(1,174),rep(0,26))
)
tabla <- table(tratamiento$grupo, tratamiento$supervivencia)
tabla
##
## 0 1
## Nuevo 16 184
## Tradicional 26 174
chisq.test(tabla)
##
## Pearson's Chi-squared test with Yates' continuity correction
##
## data: tabla
## X-squared = 2.1548, df = 1, p-value = 0.1421
fisher.test(tabla)
##
## Fisher's Exact Test for Count Data
##
## data: tabla
## p-value = 0.1414
## alternative hypothesis: true odds ratio is not equal to 1
## 95 percent confidence interval:
## 0.2817089 1.1722326
## sample estimates:
## odds ratio
## 0.5827261
a <- tabla[1,2]
b <- tabla[1,1]
c <- tabla[2,2]
d <- tabla[2,1]
OR <- (a*d)/(b*c)
OR
## [1] 1.718391
modelo <- glm(
supervivencia ~ edad + hipertension + grupo,
data=tratamiento,
family=binomial
)
summary(modelo)
##
## Call:
## glm(formula = supervivencia ~ edad + hipertension + grupo, family = binomial,
## data = tratamiento)
##
## Coefficients:
## Estimate Std. Error z value Pr(>|z|)
## (Intercept) 2.243005 0.835389 2.685 0.00725 **
## edad 0.001795 0.014306 0.125 0.90015
## hipertensionSi 0.335864 0.369643 0.909 0.36355
## grupoTradicional -0.541770 0.335810 -1.613 0.10667
## ---
## Signif. codes: 0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1
##
## (Dispersion parameter for binomial family taken to be 1)
##
## Null deviance: 268.75 on 399 degrees of freedom
## Residual deviance: 265.19 on 396 degrees of freedom
## AIC: 273.19
##
## Number of Fisher Scoring iterations: 5
resumen <- tratamiento %>%
group_by(grupo) %>%
summarise(supervivencia=mean(supervivencia))
ggplot(resumen,aes(grupo,supervivencia))+
geom_col()+
labs(title="Supervivencia por tratamiento")
| Método | Uso | Ventajas | Desventajas |
|---|---|---|---|
| Z | Proporciones | Rápido | n grande |
| t | Medias | Popular | Normalidad |
| Chi-cuadrado | Frecuencias | Flexible | Supuestos |
| Fisher | Frecuencias pequeñas | Exacto | Más lento |
| Logística | Variable binaria | Controla covariables | Complejo |
Los métodos seleccionados permiten evaluar diferencias poblacionales desde distintos enfoques. Las pruebas exactas ofrecen mayor precisión, mientras que los métodos asintóticos son computacionalmente más eficientes.
Todos los datos fueron generados mediante simulación reproducible usando set.seed().
Fisher (1925). Statistical Methods for Research Workers.
Montgomery & Runger (2018). Applied Statistics and Probability for Engineers.
Rosner (2015). Fundamentals of Biostatistics.