---
title: Contrastes para dos poblaciones independientes
lang: es
---
```{r setup, include=FALSE}
knitr::opts_chunk$set(echo = TRUE, message = FALSE, warning = FALSE)
library(tidyverse)
df <- read_csv("datos/datos-curso.csv")
```
Este capítulo desarrolla la primera fila de la [tabla de decisión](10-seleccion-contraste.qmd) que involucra a dos variables: aquella en la que la variable independiente es cualitativa con dos categorías, cada una correspondiente a un grupo de individuos **distintos** (poblaciones independientes), y se quiere contrastar si existen diferencias entre esos dos grupos en una variable dependiente, ya sea esta cuantitativa o cualitativa. Los ejemplos utilizan el conjunto de datos `datos-curso.csv` presentado en el [capítulo anterior](10-seleccion-contraste.qmd), comparando a los alumnos según su `sexo` (Hombre / Mujer), dos grupos formados por alumnos diferentes y por tanto independientes entre sí.
## Variable dependiente cuantitativa
Cuando la variable dependiente es cuantitativa, el objetivo habitual es comparar la nota obtenida en la primera prueba, `notaA`, entre los alumnos y las alumnas. Antes de aplicar ningún contraste conviene describir y representar gráficamente los datos, y comprobar si es razonable asumir que `notaA` sigue una distribución normal dentro de cada grupo, ya que de ello depende qué contraste es el más apropiado.
### Estadísticos descriptivos por grupo
```{r descriptivos-notaA-sexo}
library(moments)
df %>%
group_by(sexo) %>%
summarise(
n = n(),
media = mean(notaA),
de = sd(notaA),
minimo = min(notaA),
Q1 = quantile(notaA, 0.25),
mediana = median(notaA),
Q3 = quantile(notaA, 0.75),
maximo = max(notaA),
asimetria = skewness(notaA),
apuntamiento = kurtosis(notaA)
)
```
Los dos grupos tienen un tamaño razonable (71 hombres y 49 mujeres), medias muy parecidas (6.12 frente a 5.89) y coeficientes de asimetría y apuntamiento próximos a los valores 0 y 3 propios de la distribución normal, lo que sugiere que ninguno de los dos grupos se aparta mucho de la normalidad.
### Representación gráfica
El diagrama de cajas y bigotes y el diagrama de violín permiten comparar visualmente la posición, la dispersión y la forma de la distribución de `notaA` en ambos grupos.
```{r boxplot-notaA-sexo, fig.cap="Diagrama de cajas y bigotes de la nota A según el sexo."}
ggplot(df, aes(x = sexo, y = notaA, fill = sexo)) +
geom_boxplot() +
scale_fill_brewer(palette = "Set2") +
labs(x = "Sexo", y = "Nota A") +
theme_minimal() +
theme(legend.position = "none")
```
```{r violin-notaA-sexo, fig.cap="Diagrama de violín de la nota A según el sexo."}
ggplot(df, aes(x = sexo, y = notaA, fill = sexo)) +
geom_violin() +
scale_fill_brewer(palette = "Set2") +
labs(x = "Sexo", y = "Nota A") +
theme_minimal() +
theme(legend.position = "none")
```
Ambos gráficos muestran cajas y formas muy similares en los dos grupos, sin apenas solapamiento asimétrico ni valores atípicos destacados, lo que anticipa que es poco probable encontrar diferencias relevantes entre ambos grupos.
### Comprobación de la normalidad
Antes de decidir entre un contraste paramétrico (test t) o no paramétrico (test U de Mann-Whitney) hay que comprobar la normalidad de `notaA` **en cada grupo por separado**, con el test de Shapiro-Wilk visto en el capítulo de [contrastes para una población](11-contrastes-una-poblacion.qmd):
```{r shapiro-notaA-sexo}
df %>%
group_by(sexo) %>%
summarise(
n = n(),
`p-valor` = shapiro.test(notaA)$p.value
)
```
En ambos grupos el p-valor del test de Shapiro-Wilk es muy superior a 0.05 (0.872 en hombres y 0.942 en mujeres), por lo que no hay evidencia para rechazar la normalidad de `notaA` en ninguno de los dos grupos. Se cumple, por tanto, el requisito para aplicar los contrastes paramétricos (test F y test t) que se muestran a continuación.
### Test F de Fisher de comparación de varianzas
:::{#def-dosindep-test-f}
## Test F de Fisher de comparación de varianzas
El _test F de Fisher_ contrasta si las varianzas de una variable cuantitativa son iguales en dos poblaciones independientes. La hipótesis nula es
$$H_0: \sigma_1^2 = \sigma_2^2$$
frente a la hipótesis alternativa $H_1: \sigma_1^2 \neq \sigma_2^2$.
:::
**Requisitos**: la variable dependiente debe ser cuantitativa y seguir una distribución normal en ambas poblaciones (o, alternativamente, cada grupo debe tener un tamaño muestral $n \geq 30$).
Comprobada la normalidad de `notaA` en ambos grupos, puede aplicarse el test F para decidir si, a la hora de comparar las medias, debe asumirse o no que las varianzas poblacionales son iguales.
:::{#exm-dosindep-test-f}
```{r test-f-notaA-sexo}
var.test(notaA ~ sexo, data = df)
```
El p-valor del contraste es 0.1347, superior a 0.05, por lo que no se rechaza la hipótesis nula: no hay evidencia de que las varianzas de `notaA` difieran entre hombres y mujeres, y puede asumirse la igualdad de varianzas al aplicar el test t de comparación de medias.
:::
### Test t de comparación de medias de poblaciones independientes
:::{#def-dosindep-test-t}
## Test t de comparación de medias de poblaciones independientes
El _test t de comparación de medias de poblaciones independientes_ contrasta si las medias de una variable cuantitativa normal son iguales en dos poblaciones independientes. La hipótesis nula es
$$H_0: \mu_1 = \mu_2$$
frente a la hipótesis alternativa $H_1: \mu_1 \neq \mu_2$ (o una alternativa unilateral, si procede).
:::
**Requisitos**: la variable dependiente debe ser cuantitativa y seguir una distribución normal en ambas poblaciones (o cada grupo debe tener $n \geq 30$). El cálculo del estadístico del contraste depende, además, de si las varianzas poblacionales pueden considerarse iguales o no, lo que se determina con el test F anterior: si las varianzas son homogéneas se emplea la versión clásica del test t (`var.equal = TRUE`); si no lo son, se emplea la corrección de Welch (`var.equal = FALSE`), que es además la opción por defecto en R y una elección razonable siempre que exista alguna duda sobre la igualdad de varianzas.
Como el test F no ha encontrado diferencias significativas entre las varianzas, cabría esperar que ambas versiones del test t den resultados muy parecidos. Se aplica el test t con la corrección de Welch, más conservadora y por tanto más segura como opción por defecto:
:::{#exm-dosindep-test-t}
```{r test-t-notaA-sexo}
t.test(notaA ~ sexo, data = df, alternative = "two.sided", var.equal = FALSE)
```
El p-valor es 0.3739, muy superior a 0.05, por lo que no se rechaza $H_0$: no hay evidencia de que la nota media de la primera prueba difiera entre hombres y mujeres. Si se repite el contraste asumiendo varianzas iguales (`var.equal = TRUE`), el resultado es prácticamente idéntico (t = 0.926, p = 0.3563), como cabía esperar tras el resultado del test F.
:::
El siguiente diagrama de medias, con el intervalo de confianza al 95% de la media en cada grupo, ilustra gráficamente la conclusión del contraste: los dos intervalos se solapan ampliamente, coherente con la ausencia de diferencias significativas.
```{r diagrama-medias-notaA-sexo, fig.cap="Media de la nota A por sexo, con su intervalo de confianza al 95%."}
media_ic <- function(x) {
m <- mean(x)
error <- qt(0.975, df = length(x) - 1) * sd(x) / sqrt(length(x))
data.frame(y = m, ymin = m - error, ymax = m + error)
}
ggplot(df, aes(x = sexo, y = notaA, color = sexo)) +
stat_summary(fun = "mean", geom = "point", size = 3) +
stat_summary(fun.data = media_ic, geom = "pointrange") +
labs(x = "Sexo", y = "Nota A media") +
theme_minimal() +
theme(legend.position = "none")
```
### Test U de Mann-Whitney
:::{#def-dosindep-test-u-mann-whitney}
## Test U de Mann-Whitney
El _test U de Mann-Whitney_ (también llamado test de la suma de rangos de Wilcoxon) contrasta si las distribuciones de una variable cuantitativa o cualitativa ordinal son iguales en dos poblaciones independientes, sin necesidad de asumir normalidad. Cuando las dos distribuciones tienen la misma forma y dispersión, el contraste equivale a comparar sus medianas. La hipótesis nula es
$$H_0: \mbox{las distribuciones de las dos poblaciones son iguales}$$
frente a la alternativa de que una de las poblaciones tiende a presentar valores sistemáticamente más altos (o más bajos) que la otra.
:::
**Requisitos**: la variable dependiente debe ser, al menos, cualitativa ordinal (o cuantitativa), y las dos poblaciones deben ser independientes. No exige que la variable siga una distribución normal, por lo que es la alternativa natural al test t cuando no se cumple ese requisito.
Aunque en este caso `notaA` es normal en ambos grupos y el test t es aplicable, se muestra también el test U de Mann-Whitney a modo ilustrativo, ya que sería la opción adecuada si la normalidad no se hubiera cumplido:
:::{#exm-dosindep-test-u-mann-whitney}
```{r test-u-notaA-sexo}
wilcox.test(notaA ~ sexo, data = df, alternative = "two.sided")
```
El p-valor es 0.3445, superior a 0.05, por lo que tampoco con este contraste no paramétrico se rechaza la hipótesis nula: la distribución de `notaA` no difiere significativamente entre hombres y mujeres, confirmando la conclusión alcanzada con el test t.
:::
## Variable dependiente cualitativa
Cuando la variable dependiente es cualitativa, el interés no está en comparar medias sino en comparar **proporciones**, o, de forma equivalente, en contrastar si existe **asociación** entre las dos variables cualitativas. Como ejemplo se compara el resultado (Aprobado / Suspenso) de la primera prueba, `calificacionA`, entre hombres y mujeres.
La tabla de contingencia entre `sexo` y `calificacionA`, y las proporciones de aprobados dentro de cada sexo, son las siguientes:
```{r tabla-contingencia-sexo-calificacionA}
tabla <- table(df$sexo, df$calificacionA)
tabla
prop.table(tabla, margin = 1)
```
El 81.7% de los hombres aprueba la primera prueba, frente al 73.5% de las mujeres. La pregunta que responden los contrastes de esta sección es si esa diferencia de casi 8 puntos porcentuales es lo bastante grande como para no poder explicarse por el azar del muestreo, o si, por el contrario, es compatible con que en la población no exista ninguna diferencia real entre sexos.
### Test Chi-cuadrado de independencia
:::{#def-dosindep-test-chi-cuadrado}
## Test Chi-cuadrado de independencia
El _test Chi-cuadrado de independencia_ contrasta si existe relación (asociación) entre dos variables cualitativas, o, de forma equivalente cuando una de ellas define dos poblaciones, si las proporciones de las categorías de la otra variable son iguales en ambas poblaciones. La hipótesis nula es
$$H_0: \mbox{las dos variables son independientes (no hay asociación entre ellas)}$$
:::
**Requisitos**: las dos variables deben ser cualitativas, y no más del 20% de las frecuencias esperadas de la tabla de contingencia debe ser inferior a 5 (ninguna frecuencia esperada debe ser, además, inferior a 1).
:::{#exm-dosindep-test-chi-cuadrado}
```{r chi-cuadrado-sexo-calificacionA}
chi <- chisq.test(tabla)
chi
chi$expected
```
Las cuatro frecuencias esperadas de la tabla (55.6, 15.4, 38.4 y 10.6) son todas superiores a 5, por lo que se cumple el requisito de aplicación del test. El p-valor obtenido, con la corrección de continuidad de Yates propia de las tablas 2x2, es 0.3959, muy superior a 0.05, por lo que no se rechaza la hipótesis nula: no hay evidencia de asociación entre el sexo y el resultado de la primera prueba, es decir, la proporción de aprobados no difiere significativamente entre hombres y mujeres.
:::
### Test exacto de Fisher
:::{#def-dosindep-test-fisher}
## Test exacto de Fisher
El _test exacto de Fisher_ contrasta la misma hipótesis de independencia que el test Chi-cuadrado, pero calculando de forma exacta (sin aproximación asintótica) la probabilidad de las tablas de contingencia al menos tan extremas como la observada. La hipótesis nula es la misma que la del test Chi-cuadrado:
$$H_0: \mbox{las dos variables son independientes (no hay asociación entre ellas)}$$
Es la alternativa recomendada, especialmente en tablas 2x2, cuando no se cumple el requisito de frecuencias esperadas del test Chi-cuadrado (muestras pequeñas).
:::
**Requisitos**: las dos variables deben ser cualitativas. A diferencia del test Chi-cuadrado, no exige ninguna condición sobre las frecuencias esperadas, por lo que es válido con cualquier tamaño muestral.
:::{#exm-dosindep-test-fisher}
```{r fisher-sexo-calificacionA}
fisher.test(tabla)
```
El p-valor del test exacto de Fisher es 0.3677, muy similar al obtenido con el test Chi-cuadrado (0.3959) y, de nuevo, muy superior a 0.05: no se rechaza la hipótesis nula de independencia. Este parecido entre ambos resultados es el esperable, ya que las frecuencias esperadas de la tabla de contingencia eran, como se comprobó antes, suficientemente grandes para que el test Chi-cuadrado fuera fiable; el test exacto de Fisher habría sido la opción obligada, en cambio, de haber tenido frecuencias esperadas por debajo de 5.
:::
## Resumen
En los cinco contrastes de este capítulo, ninguno ha encontrado diferencias estadísticamente significativas entre hombres y mujeres, ni en la nota media de la primera prueba ni en la proporción de aprobados, lo que es coherente con lo observado en las descriptivas y los gráficos iniciales: los dos grupos se comportan, en esta asignatura, de forma muy similar.
Todos los contrastes anteriores exigen que las dos poblaciones comparadas estén formadas por individuos distintos, es decir, que sean independientes. Cuando en cambio se comparan los mismos individuos medidos en dos ocasiones (por ejemplo, la nota de un mismo alumno en dos pruebas distintas, `notaA` y `notaB`), las poblaciones están pareadas y los contrastes anteriores dejan de ser válidos, siendo necesario recurrir a sus versiones para datos pareados, que se desarrollan en el capítulo de [Contrastes para dos poblaciones pareadas](13-contrastes-dos-poblaciones-pareadas.qmd). Y cuando la variable independiente tiene más de dos categorías (por ejemplo, comparar la nota media entre los tres grupos de clase, A, B y C), es necesario recurrir a los contrastes que se desarrollan en el capítulo de [Contrastes para más de dos poblaciones independientes](14-contrastes-mas-dos-poblaciones-independientes.qmd).