Pruebas de Hipótesis con Una y Dos Muestras

Author

D. S. Fernández del Viso

Pruebas de Hipótesis con Una Muestra

Comparación con una media teórica

Para las pruebas paramétricas utilizamos la distribución t-Student. El estadístico para la muestra (ts) se calcula mediante la siguiente fórmula:

\[ t_s = \frac{\bar x - \mu}{s/\sqrt n} \]

¿A qué otra fórmula estadística se parece la fórmula de ts?

A partir del estadístico calculado, lo comparamos con el valor de t crítico obtenido de una tabla o mediante código R, para un nivel de significancia \(\alpha\), grados de libertad \(\nu\) calculados como n - 1, y para una o dos colas (de acuerdo a la hipótesis nula).

Recordar las hipótesis que te conducen a usar una cola y dos colas.

Ejemplo con media y desviación estándar conocida

Las reglas de la FDA exigen que los medicamentos cumplan con estrictos estándares de contenido de las sustancias activas de los mismos. Para un suplemento vitamínico está establecido que el contenido de vitamina X sea de un promedio de 100 unidades por píldora. Una bioquímica de la farmaceútica que las produce, toma una muestra de 50 píldoras de un lote de miles de píldoras. En su análisis encontró que la muestra tiene un contenido promedio de 100.5 unidades de vitamina X por píldora, con una desviación estándar de 2.19 unidades. Desea comprobar si la muestra se tomo de una población (el lote completo) con una media de 100 unidades.

Cálculo de t:

# t de la muestra
media_s <- 100.5
media_ho <- 100
s <- 2.19
n <- 50
ts <- (media_s - media_ho)/(s/sqrt(n))
sprintf("t_muestra: %.2f",ts)
[1] "t_muestra: 1.61"

¿Qué nombre tiene la expresión \(\frac{s}{\sqrt n}\)?

Valor de t crítico para dos colas (\(H_0:\mu_s = \mu_0\)) y una cola (\(H_0:\mu_s \leq \mu_0\)), con \(\alpha = 0.05\) y \(\nu = n - 1\):

# t crítico para alfa = 0.05
alfa <- 0.05
n <- 50
gl <- n - 1
# valor de t alfa = 0.05 una cola
tc1 <- qt(alfa, gl, lower.tail = FALSE)
# valor de t alfa = 0.05 dos colas
tc2 <- qt(alfa/2, gl, lower.tail = FALSE)
sprintf("t_crítico, una cola: %.2f", tc1)
[1] "t_crítico, una cola: 1.68"
sprintf("t_crítico, dos colas: %.2f", tc2)
[1] "t_crítico, dos colas: 2.01"

¿Cuál es su conclusión sobre las hipótesis planteadas y el problema planteado en el ejemplo?

Ejemplo con datos crudos de las mediciones

Queremos saber si el promedio de la concentración de triglicéridos en la sangre de una muestra de individuos es diferente del valor umbral establecido de 100 mg/dl. Usaremos los datos de un archivo .csv y el comando t.test de R.

¿Cuáles son las hipótesis nulas y alternas que se puede plantear?

# datos
trigli <- read.csv("trigliceridos.csv")
# prueba t usando t.test
t.test(trigli$trigliceridos_mgdl, mu = 100)

    One Sample t-test

data:  trigli$trigliceridos_mgdl
t = -0.88799, df = 19, p-value = 0.3856
alternative hypothesis: true mean is not equal to 100
95 percent confidence interval:
  76.83646 109.36354
sample estimates:
mean of x 
     93.1 

Los resultados nos muestran el valor de t calculado, grados de libertad y el valor de p (probabilidad de error tipo I si rechazamos la hipótesis nula siendo esta cierta). Si no se indica lo contrario, la prueba es una de dos colas para una \(H_0:\mu_s = \mu_0\). Para una cola, se debe indicar la hipótesis alterna con el parámetro alternative = “greater” o “less”, según sea lo esperado. La prueba también muestra la media y el intervalo de confianza de 95%.

Prueba con hipótesis de que la media de la muestra es menor que 100:

# prueba t usando t.test
t.test(trigli$trigliceridos_mgdl, mu = 100, alternative = "less")

    One Sample t-test

data:  trigli$trigliceridos_mgdl
t = -0.88799, df = 19, p-value = 0.1928
alternative hypothesis: true mean is less than 100
95 percent confidence interval:
    -Inf 106.536
sample estimates:
mean of x 
     93.1 

¿Cuál es la conclusión de su prueba?

Prueba con datos pareados

En el diseño de comparaciones pareadas un sujeto experimental se empareja con otro lo más similar posible y, de manera aleatoria, a uno se le da un tratamiento y al otro no o uno diferente. El efecto de un tratamiento se mide mediante la diferencia entre los sujetos emparejados, por eso la prueba de hipótesis se realiza como de una muestra.

La fórmula para el cálculo de la t es la siguiente:

\[ t_d = \frac{\bar d}{s/\sqrt(n)} \]

¿Cuál es el valor de la media teórica en este caso?

Ejemplo con datos pareados

Vamos a analizar datos del tiempo de curación de quemaduras (días) utilizando dos preparaciones de un medicamento. Los sujetos (n = 20) fueron tratados de quemaduras en ambos brazos, un brazo con la versión O y el otro con la versión N del medicamento. En este caso usamos el parámetro lógico paired para indicar que los datos están pareados.

Establezca las hipótesis.

# datos
curacion <- read.csv("Table 9.2.csv")
# prueba t usando t.test
t.test(curacion$new, curacion$old, paired = TRUE)

    Paired t-test

data:  curacion$new and curacion$old
t = -5.0831, df = 19, p-value = 6.605e-05
alternative hypothesis: true difference in means is not equal to 0
95 percent confidence interval:
 -3.790573 -1.579427
sample estimates:
mean of the differences 
                 -2.685 

Los resultados muestran el promedio de las diferencias entre los tratamientos y su intervalo de confianza (95%).

Conclusiones de la prueba.

Mediante comandos del paquete PairedData, obtenemos una gráfica de la variación de los datos:

library(PairedData)
version_O <- curacion$old
version_N <- curacion$new
pd <- paired(version_O,version_N)
plot(pd, type = "profile") + ylab("Tiempo de curación, días")

Interprete la gráfica.

Pruebas de Hipótesis con Dos Muestras

Al igual que en la sección anterior con una sola muestra, a partir de dos muestras de una población con distribución normal, podemos probar las siguientes hipótesis utilizando el estadístico t:

\[ H_0:\mu_a = \mu_b \]

\[ H_0:\mu_a \leq \mu_b \]

\[ H_0:\mu_a \geq \mu_b \]

El cálculo de t:

\[ t = \frac{\bar x_a - \bar x_b}{\sqrt{\frac{s_a^2}{n_a} + \frac{s_b^2}{n_b}}} \]

¿Cómo sería la fórmula si \(n_a = n_b\)?

Ejemplo con datos crudos de dos muestras

Vamos a comparar las medias de la masa de dos muestras de semillas de la especie Thespesia populnea (emajagüilla), tomadas en dos años.

# datos
library(readxl)
semillas <- read_xlsx("semilla_thepol.xlsx")
# estadísticos básicos
library(dplyr)
group_by(semillas, year) %>%
  summarise(
    count = n(),
    mean = mean(masa_g, na.rm = TRUE),
    sd = sd(masa_g, na.rm = TRUE)
  )
# A tibble: 2 x 4
   year count  mean     sd
  <dbl> <int> <dbl>  <dbl>
1  2016   223 0.222 0.0494
2  2017   264 0.226 0.0545
# visualizar los datos en box-plot
library(ggpubr)
ggboxplot(semillas, x = "year", y = "masa_g", add = "mean", 
          color = "year", palette = c("#00AFBB", "#E7B800"),
          ylab = "Masa, g", xlab = "Año")

Establezca las hipótesis.

Vamos a usar el comando t.test, ahora para dos muestras independientes:

t.test(masa_g ~ year, data = semillas)

    Welch Two Sample t-test

data:  masa_g by year
t = -0.75071, df = 482.6, p-value = 0.4532
alternative hypothesis: true difference in means is not equal to 0
95 percent confidence interval:
 -0.012783540  0.005715663
sample estimates:
mean in group 2016 mean in group 2017 
         0.2224888          0.2260227 

Interprete el resultado de la prueba.

Prueba No-Paramétrica para Dos Muestras

Cuando los datos no cumplen con los supuestos para la prueba t, y además las muestras son pequeñas, podemos usar una prueba no-paramétrica (que no depende de los parámetros de la distribución normal) llamada prueba U de Mann-Whitney. Con esta prueba queremos saber si las muestras poseen medianas \(\theta\) idénticas.

Ejemplo con datos que no cumplen supuestos de prueba paramétrica

Vamos a usar datos de salud de arbolitos de pino creciendo en dos lugares, A y B. La salud de los árboles se categoriza con valores desde 1 = saludable hasta 5 = muerto.

¿Por qué los datos no cumplen con los supuestos de la prueba paramétrica?

# datos
sitioA <- c(2,2,1,2,3,4,2,3,1,5)
sitioB <- c(4,5,3,1,4,3,5,2,1,2)
# prueba no-paramétrica
wilcox.test(sitioA, sitioB, alternative = "two.sided")
Warning in wilcox.test.default(sitioA, sitioB, alternative = "two.sided"):
cannot compute exact p-value with ties

    Wilcoxon rank sum test with continuity correction

data:  sitioA and sitioB
W = 40, p-value = 0.4619
alternative hypothesis: true location shift is not equal to 0

Interprete los resultados.