En el contexto de la prueba de hipótesis, la potencia de una prueba estadística es una medida fundamental que nos indica la capacidad de detectar un efecto si realmente existe. En este informe, exploraremos cómo la potencia está relacionada con tres aspectos clave:
El tamaño del efecto (d): Cuantifica la magnitud de la diferencia entre grupos. El tamaño de la muestra (n): Indica cuántas observaciones tenemos para cada grupo. El nivel de significancia (α): Define la probabilidad de rechazar incorrectamente la hipótesis nula.
Usaremos la prueba t de Student para comparar medias entre dos grupos, evaluando cómo estos factores influyen en la potencia estadística.
El objetivo de este primer caso es estudiar cómo varía la potencia al modificar el tamaño del efecto (d), manteniendo constante el nivel de significancia (𝛼=0.05 ) y evaluando diferentes tamaños de muestra (n=20,60,100,140).
A continuación, presentamos el código en R utilizado para este análisis:
# Librerías necesarias
library(pwr)
library(ggplot2)
# Definir los parámetros
tamaños_muestra <- c(20, 60, 100, 140)
niveles_significancia <- c(0.01, 0.02, 0.05, 0.1, 0.15)
tamaños_efecto <- c(0.1, 0.2, 0.5, 0.8)
# Función para calcular la potencia y generar un solo data frame con todos los datos
calcular_potencia <- function() {
data_list <- list()
for (alpha in niveles_significancia) {
for (d in tamaños_efecto) {
potencias <- sapply(tamaños_muestra, function(n) {
pwr.t.test(n = n, d = d, sig.level = alpha, type = "two.sample", alternative = "two.sided")$power
})
# Crear un data frame para almacenar los resultados
data <- data.frame(Tamaño_Muestra = tamaños_muestra, Potencia = potencias,
Tamaño_Efecto = d, Alfa = alpha)
data_list[[length(data_list) + 1]] <- data
}
}
# Unir todos los data frames
do.call(rbind, data_list)
}
# Generar los datos
potencia_data <- calcular_potencia()
# Graficar agrupando por nivel de significancia y tamaño de efecto
ggplot(potencia_data, aes(x = Tamaño_Muestra, y = Potencia, color = factor(Tamaño_Efecto))) +
geom_line() + geom_point() +
facet_wrap(~Alfa, scales = "free", ncol = 2) +
labs(title = "Potencia vs Tamaño de Muestra para Diferentes Niveles de Significancia",
x = "Tamaño de Muestra", y = "Potencia", color = "Tamaño del Efecto") +
theme_minimal()
Al observar los gráficos generados, notamos lo siguiente:
A medida que el tamaño de la muestra aumenta, también lo hace la potencia de la prueba.
Niveles de significancia más bajos (α=0.01) requieren tamaños de muestra mayores para alcanzar un nivel aceptable de potencia (>80%).
El tamaño del efecto juega un rol importante: efectos pequeños (d = 0.1) requieren muestras más grandes para ser detectados con potencia adecuada, mientras que efectos grandes (d = 0.8) logran buena potencia con muestras más pequeñas.
En este segundo caso, se modela la potencia en función del tamaño del efecto para diferentes tamaños de muestra, considerando desequilibrios entre los grupos. Específicamente, analizamos tamaños muestrales desiguales, y cómo esto afecta la potencia de la prueba t.
Tamaños de muestra evaluados:
# Definir los tamaños de muestra desiguales
tamaños_muestra_grupos <- list(
c(28, 1406),
c(144, 1290),
c(287, 1147),
c(430, 1004),
c(574, 860),
c(717, 717)
)
# Función para calcular la potencia con tamaños muestrales distintos
calcular_potencia_tamaños_muestrales <- function() {
data_list <- list()
for (alpha in niveles_significancia) {
for (muestra in tamaños_muestra_grupos) {
potencias <- sapply(tamaños_efecto, function(d) {
pwr.t2n.test(n1 = muestra[1], n2 = muestra[2], d = d, sig.level = alpha)$power
})
# Crear un data frame para almacenar los resultados
data <- data.frame(Tamaño_Efecto = tamaños_efecto, Potencia = potencias,
n1 = muestra[1], n2 = muestra[2], Alfa = alpha)
data_list[[length(data_list) + 1]] <- data
}
}
# Unir todos los data frames
do.call(rbind, data_list)
}
# Generar los datos
potencia_tamaños_muestrales_data <- calcular_potencia_tamaños_muestrales()
# Graficar agrupando por tamaños muestrales y nivel de significancia
ggplot(potencia_tamaños_muestrales_data, aes(x = Tamaño_Efecto, y = Potencia, color = factor(n1))) +
geom_line() + geom_point() +
facet_wrap(~Alfa, scales = "free", ncol = 2) +
labs(title = "Potencia vs Tamaño del Efecto para Diferentes Tamaños Muestrales",
x = "Tamaño del Efecto", y = "Potencia", color = "Tamaño de Muestra (n1)") +
theme_minimal()
Los gráficos generados en este caso muestran cómo el desequilibrio entre los tamaños muestrales impacta en la potencia:
Tamaños de muestra desiguales: Como era de esperarse, los tamaños de muestra muy desiguales (por ejemplo, n1=28 y n2=1406) requieren un * tamaño de efecto mayor (d > 0.54) para lograr una potencia aceptable (>80%).
Grupos iguales: Cuando los grupos tienen tamaños iguales (n1=717, n2=717), la potencia es máxima para un tamaño de efecto dado, mostrando que el equilibrio entre las muestras es crucial para maximizar la capacidad de detección de efectos.
Este análisis nos permitió observar cómo el tamaño de la muestra, el tamaño del efecto y el nivel de significancia influyen en la potencia de una prueba t de Student: