Test t de Welch

El test t de Welch compara las medias de dos grupos independientes sin asumir que sus varianzas poblacionales son iguales. Es la opción correcta por defecto para comparaciones de dos muestras: funciona casi tan bien como el test t combinado cuando las varianzas son iguales, y sustancialmente mejor cuando no lo son.

Hipótesis

Test \(H_0\) \(H_1\)
Bilateral \(\mu_1 = \mu_2\) \(\mu_1 \neq \mu_2\)
Unilateral derecho \(\mu_1 = \mu_2\) \(\mu_1 > \mu_2\)
Unilateral izquierdo \(\mu_1 = \mu_2\) \(\mu_1 < \mu_2\)

Estadístico del test

Dadas dos muestras independientes con medias \(\bar{x}_1\), \(\bar{x}_2\), varianzas \(S_1^2\), \(S_2^2\) y tamaños \(n_1\), \(n_2\):

\[t = \frac{\bar{x}_1 - \bar{x}_2}{\sqrt{\dfrac{S_1^2}{n_1} + \dfrac{S_2^2}{n_2}}}\]

Los grados de libertad se obtienen mediante la aproximación de Satterthwaite:

\[gl = \frac{\left(\dfrac{S_1^2}{n_1} + \dfrac{S_2^2}{n_2}\right)^2}{\dfrac{(S_1^2/n_1)^2}{n_1-1} + \dfrac{(S_2^2/n_2)^2}{n_2-1}}\]

Este valor generalmente no es entero y se redondea hacia abajo. Siempre es menor o igual que \(n_1 + n_2 - 2\) (los grados de libertad combinados), lo que hace que Welch sea ligeramente más conservador cuando las varianzas son iguales.

Test t de Welch vs test t combinado

El test t combinado asume \(\sigma_1^2 = \sigma_2^2\) y estima la varianza común como:

\[S_p^2 = \frac{(n_1-1)S_1^2 + (n_2-1)S_2^2}{n_1+n_2-2}\]

dando \(gl = n_1+n_2-2\). Cuando las varianzas son realmente iguales, el test combinado es ligeramente más potente. Cuando difieren, el test combinado puede ser anticonservador: rechaza \(H_0\) más a menudo de lo que debería.

Simulación mostrando la tasa real de error de tipo I del test t combinado y el de Welch al aumentar el cociente de varianzas entre grupos

El test de Welch (azul) mantiene la tasa nominal del 5% de error de tipo I independientemente del cociente de varianzas. El test combinado (rojo) supera el 5% en cuanto las varianzas difieren, llegando a más del 10% cuando el cociente es 10.

⚠️ No uses el test F para decidir entre Welch y el test combinado

Un flujo de trabajo habitual pero incorrecto: primero contrastar \(H_0: \sigma_1^2 = \sigma_2^2\) con el test F y, si no se rechaza, usar el test t combinado; si se rechaza, usar Welch. Esto es problemático por dos razones:

  • El test F para varianzas tiene poca potencia con muestras pequeñas: a menudo no detecta diferencias reales en las varianzas, llevando a usar incorrectamente el test combinado.
  • El procedimiento en dos etapas distorsiona el nivel de significación real del test t final.

El enfoque correcto: usa siempre Welch por defecto. Si las varianzas resultan ser iguales, Welch pierde casi nada de potencia. Si difieren, Welch es correcto y el combinado no. Por eso t.test() en R usa var.equal = FALSE por defecto.

Ejemplos

Ejemplo 1: tiempos de entrega por mensajero (bilateral)

Un responsable de logística compara los tiempos de entrega de dos mensajerías. Mensajería A (\(n_1 = 30\)): \(\bar{x}_1 = 2{,}8\) días, \(S_1 = 0{,}6\) días. Mensajería B (\(n_2 = 25\)): \(\bar{x}_2 = 3{,}2\) días, \(S_2 = 1{,}4\) días.

Estadístico del test:

\[t = \frac{2{,}8 - 3{,}2}{\sqrt{0{,}36/30 + 1{,}96/25}} = \frac{-0{,}4}{\sqrt{0{,}012 + 0{,}0784}} = \frac{-0{,}4}{\sqrt{0{,}0904}} = \frac{-0{,}4}{0{,}3007} \approx -1{,}330\]

Grados de libertad de Satterthwaite:

\[gl = \frac{(0{,}012 + 0{,}0784)^2}{(0{,}012)^2/29 + (0{,}0784)^2/24} = \frac{0{,}008156}{0{,}00000497 + 0{,}000256} \approx 31{,}1 \to 31\]

P-valor (bilateral): \(p = 2 \times P(T_{31} \leq -1{,}330) \approx 0{,}193\).

Decisión: \(p = 0{,}193 > 0{,}05\), no rechazamos \(H_0\). No hay diferencia significativa en el tiempo de entrega medio entre las dos mensajerías.

Distribución t con regiones de rechazo bilaterales y el estadístico t observado para el ejemplo de los tiempos de entrega

Ejemplo 2: fármaco vs placebo (unilateral derecho)

Un ensayo clínico mide la reducción de la presión arterial (mmHg). Tratamiento (\(n_1 = 40\)): \(\bar{x}_1 = 14{,}2\), \(S_1 = 5{,}8\). Placebo (\(n_2 = 38\)): \(\bar{x}_2 = 10{,}9\), \(S_2 = 3{,}1\).

Estadístico del test:

\[t = \frac{14{,}2 - 10{,}9}{\sqrt{33{,}64/40 + 9{,}61/38}} = \frac{3{,}3}{\sqrt{0{,}841 + 0{,}253}} = \frac{3{,}3}{\sqrt{1{,}094}} = \frac{3{,}3}{1{,}046} \approx 3{,}155\]

Grados de libertad de Satterthwaite \(\approx 59\) (calculados por software).

P-valor (unilateral derecho): \(p = P(T_{59} \geq 3{,}155) \approx 0{,}001\).

Decisión: \(p = 0{,}001 < 0{,}05\), rechazamos \(H_0\). El fármaco produce una reducción de la presión arterial significativamente mayor que el placebo.

Distribución t con región de rechazo derecha y el estadístico t observado para el ejemplo del fármaco frente al placebo

Realizar el test en R

El test t de Welch es el predeterminado en R:

# Test t de Welch (predeterminado, var.equal = FALSE)
t.test(x1, x2, alternative = "two.sided")
t.test(x1, x2, alternative = "greater")

# Test t combinado (requiere el supuesto de varianzas iguales)
t.test(x1, x2, var.equal = TRUE)

# Interfaz con fórmula para data frames
t.test(value ~ group, data = df, alternative = "two.sided")

La salida incluye el estadístico t, los grados de libertad de Satterthwaite, el p-valor y un IC al 95% para \(\mu_1 - \mu_2\).

💡 Cómo informar el resultado

Informa siempre la diferencia de medias y su intervalo de confianza junto con el resultado del test. Para el ejemplo 2: “El tratamiento redujo la presión arterial 3,3 mmHg más que el placebo (IC al 95%: 1,2 a 5,4 mmHg; test t de Welch \(t_{59} = 3{,}155\), \(p = 0{,}001\)).” Esto proporciona tanto la significación estadística como la magnitud práctica del efecto.