Ejercicio #5.2

En los códigos del archivo llamado caso2.R, se modela la relación entre el tamaño del efecto d y la potencia (manteniendo constante el nivel de significancia α=0.05 ). Para ello, se considera los siguientes tamaños de muestra, donde n1 es el número de sujetos en el grupo 1 y n2 es el número de sujetos en el grupo 2:

n1=28, n2=1406 : n1 representa el 2 % del tamaño total de la muestra de 1434. n1=144, n2=1290 : n1 representa el 10 % del tamaño total de la muestra de 1434. n1=287, n2=1147 : n1 representa el 20 % del tamaño total de la muestra de 1434. n1=430, n2=1004 : n1 representa el 30 % del tamaño total de la muestra de 1434. n1=574, n2=860 : n1 representa el 40 % del tamaño total de la muestra de 1434. n1=717, n2=717 : grupos de igual tamaño (esto es óptimo porque conduce a la potencia más alta para un tamaño de efecto dado).

En la figura resultante, se trazaron las curvas de potencia para la prueba t de Student, en función del tamaño del efecto, asumiendo una tasa de error Tipo I del 5 %. La comparación de diferentes curvas de potencia (basadas en el tamaño de la muestra de cada grupo) en el mismo gráfico es una representación visual útil de este análisis. En la figura también se trazó una línea discontinua horizontal en un nivel de potencia aceptable del 80% y una línea vertical en el tamaño del efecto que tendría que estar presente en nuestros datos para alcanzar el 80 % de potencia. Se observa que el tamaño del efecto debe ser superior a 0.54 para alcanzar un nivel de potencia aceptable dados tamaños de grupo altamente desequilibrados de n1=28 y n2=1406, en comparación con todos los demás escenarios que conducen al 100% de potencia. Repite el análisis usando 5 valores distintos del nivel de significancia. ¿Cambian los resultados? ¿Qué ocurre cuando n1=28 y n2=1406? Analiza y compara los resultados.

Desarrollo del Ejercicio:

Ejecutaremos el codigo propuesto probandolo a tarves de diferentes alphas para ver el comportamiento del tamaño del efecto la potencia y la diferencia entre las proporciones de las muestras de los dos grupos:

library(dplyr)
library(tidyr)
library(ggplot2)
library(plotly)
library(pwr)

Probaremos con los siguientes valores de alpha:

valores_alpha <- c(0.01, 0.05, 0.10, 0.15, 0.20)
resultados <- list()
for (alpha in valores_alpha) {
                ptab <- cbind(NULL, NULL)
                 for (i in seq(0, 1, length.out = 200)) {
                pwrt1 <- pwr.t2n.test(n1 = 28, n2 = 1406, sig.level = alpha, power = NULL, d = i, alternative = "two.sided")
                pwrt2 <- pwr.t2n.test(n1 = 144, n2 = 1290, sig.level = alpha, power = NULL, d = i, alternative = "two.sided")
                pwrt3 <- pwr.t2n.test(n1 = 287, n2 = 1147, sig.level = alpha, power = NULL, d = i, alternative = "two.sided")
                pwrt4 <- pwr.t2n.test(n1 = 430, n2 = 1004, sig.level = alpha, power = NULL, d = i, alternative = "two.sided")
                pwrt5 <- pwr.t2n.test(n1 = 574, n2 = 860, sig.level = alpha, power = NULL, d = i, alternative = "two.sided")
                pwrt6 <- pwr.t2n.test(n1 = 717, n2 = 717, sig.level = alpha, power = NULL, d = i, alternative = "two.sided")
                
                ptab <- rbind(ptab, cbind(pwrt1$d, pwrt1$power,
                                          pwrt2$d, pwrt2$power,
                                          pwrt3$d, pwrt3$power,
                                          pwrt4$d, pwrt4$power,
                                          pwrt5$d, pwrt5$power,
                                          pwrt6$d, pwrt6$power))
        }
        
        ptab <- cbind(seq_len(nrow(ptab)), ptab)
        
        colnames(ptab) <- c("id", "n1=28, n2=1406;effect size", "n1=28, n2=1406;power",
                            "n1=144, n2=1290;effect size", "n1=144, n2=1290;power",
                            "n1=287, n2=1147;effect size", "n1=287, n2=1147;power",
                            "n1=430, n2=1004;effect size", "n1=430, n2=1004;power",
                            "n1=574, n2=860;effect size", "n1=574, n2=860;power",
                            "n1=717, n2=717;effect size", "n1=717, n2=717;power")
        
        temp1 <- ptab %>% as.data.frame() %>% gather(key = name, value = val, 2:13)
        temp2 <- temp1 %>% separate(col = name, into = c("samples", "pruebas"), sep = ";")
        temp3 <- temp2 %>% spread(key = pruebas, value = val)
        
        temp3$samples <- factor(temp3$samples, 
                                levels = c("n1=28, n2=1406", "n1=144, n2=1290", 
                                           "n1=287, n2=1147", "n1=430, n2=1004",
                                           "n1=574, n2=860", "n1=717, n2=717"))
        
        temp3$alpha <- alpha
        
        resultados[[as.character(alpha)]] <- temp3
}

Combinamos todos los resultados en un solo dataframe:

resultados_obtenidos <- bind_rows(resultados)

Graficamos los resultados

p <- ggplot(resultados_obtenidos, aes(x = `effect size`, y = power, color = samples, linetype = as.factor(alpha))) +
        geom_line(size = 1) +
        theme_bw() +
        theme(axis.text = element_text(size = 10), 
              axis.title = element_text(size = 10), 
              legend.text = element_text(size = 10)) +
        geom_vline(xintercept = .54, linetype = 2) +
        geom_hline(yintercept = 0.80, linetype = 2) +
        labs(x = "Effect size", y = "Power", color = "Sampling size", linetype = "Significance level") +
        scale_color_discrete(name = "Sampling size")

plotly::ggplotly(p)

Conclusiones

Podemos ver que a medida que cambiamos el nivel de significancia se ve afectada la potencia de la prueba y el tamaño del efecto necesario para tener una potencia aceptable.

teniendo en cuenta la muestra donde n1=28 y n2=1406 podemos ver:

*Cuando el nivel de significancia (Alpha) es más alto se necesita un tamaño del efecto más bajo para alcanzar la potencia requerida, mientras que si el nivel de significancia es más bajo se necesita un tamaño del efecto más grande debido a que el umbral para rechazar la hipótesis nula es más estrecho. este ejemplo lo podemos ver con la curva de potencia n1=28 y n2=1406 para el alpha =0.01 con tamaño del efecto = 0.653 y potencia = 0.80 en cambio n1=28 y n2=1406 para el alpha =0.2 con tamaño del efecto = 0.407 y potencia = 0.80

*Para el caso donde existe gran diferencia de participación de los grupos en la muestra el tamaño del efecto requerido para alcanzar la potencia requerida será mayor, a medida que se equilibre la participación de los grupos se requerirá menor tamaño del efecto. por ejemplo para la curva de potencia donde el n1=717 y n2=717 requiere un tamaño del efecto de 0.457 para alcanzar la potencia valor 1, mientras que la curva con n1= 28 y el n2=1406 con factor de alpha 0.01 no alcanza la potencia valor 1, su maximo valor corresponde a tamaño del efecto de 1 y potencia de 0.996. con el mismo tamaño del alpha.

*De igual forma a menor alpha menor potencia bajo el mismo tamaño del efecto.Esto lo vemos en el punto: n1=28 y n2=1406 con alpha = 0.01 alcanza una potencia de 0.8 requiriendo un tamaño del efecto 0.65 en cambio para n1=28 y n2=1406 con alpha = 0.2 alcanza una potencia de 0.8 requiriendo un tamaño del efecto 0.40