Teste de Kruskal-Wallis

O teste de Kruskal-Wallis é a alternativa não paramétrica à ANOVA de um fator. Ele substitui as observações brutas por seus postos e testa se as distribuições de postos são as mesmas em todos os grupos. Não exige suposição de normalidade e é robusto a outliers e distribuições assimétricas.

Quando usar Kruskal-Wallis em vez de ANOVA

Use o teste de Kruskal-Wallis quando:

  • Os dados são claramente não normais e os tamanhos de amostra são pequenos (então o TCL não ajuda).
  • Os dados são ordinais (por exemplo, escalas Likert, classificações).
  • Há outliers extremos que distorceriam a estatística F da ANOVA.
  • O teste de Levene rejeita a homocedasticidade e a ANOVA de Welch também não é apropriada.

Quando os tamanhos de amostra são grandes e os dados são contínuos, a ANOVA de um fator (ou a de Welch) geralmente é preferível por seu maior poder.

Hipóteses

Como o teste trabalha com postos em vez de valores brutos, sua hipótese nula é formulada em termos de distribuições, não de médias:

\(H_0\): os \(k\) grupos têm a mesma distribuição (equivalentemente, a mesma mediana populacional).

\(H_1\): pelo menos um grupo tem uma distribuição diferente.

⚠️ Kruskal-Wallis testa distribuições, não apenas medianas

Uma descrição comum diz que o teste de Kruskal-Wallis compara medianas. Isso só é exato quando os grupos têm a mesma forma distribucional e diferem apenas em localização. Em geral, o teste é sensível a qualquer diferença na distribuição (localização, dispersão, forma). Um resultado significativo significa que os grupos diferem de alguma forma, mas não necessariamente em suas medianas. Interprete os resultados com cuidado quando os grupos têm formas ou variâncias muito diferentes.

Estatística do teste

Combine todas as \(N = n_1 + n_2 + \cdots + n_k\) observações e as ordene de 1 a \(N\) (postos médios para empates). Seja \(R_{ij}\) o posto da \(j\)-ésima observação no grupo \(i\), e \(\bar{R}_i = \frac{1}{n_i}\sum_j R_{ij}\) o posto médio no grupo \(i\).

\[H = \frac{12}{N(N+1)} \sum_{i=1}^{k} n_i \left(\bar{R}_i - \frac{N+1}{2}\right)^2\]

Sob \(H_0\), \(H\) segue aproximadamente uma distribuição \(\chi^2\) com \(k-1\) graus de liberdade (exata para amostras grandes). Quanto maior \(H\), mais as distribuições de postos diferem entre os grupos.

Com empates, um fator de correção é aplicado: \(H_\text{corrigido} = H / C\) em que \(C = 1 - \sum_t(t^3-t)/(N^3-N)\) e \(t\) é o tamanho de cada grupo empatado. Com poucos empates, a correção é desprezível.

Exemplo completo

Uma psicóloga mede escores de ansiedade (0-100) em três grupos de terapia após 8 semanas:

  • Grupo A (TCC): 32, 28, 35, 30, 27
  • Grupo B (Mindfulness): 45, 52, 48, 55, 50
  • Grupo C (Controle): 60, 58, 65, 62, 70

Passo 1: ordenar as 15 observações juntas.

Escore 27 28 30 32 35 45 48 50 52 55 58 60 62 65 70
Posto 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15
Grupo A A A A A B B B B B C C C C C

Passo 2: postos médios. \(\bar{R}_A = (1+2+3+4+5)/5 = 3\), \(\bar{R}_B = (6+7+8+9+10)/5 = 8\), \(\bar{R}_C = (11+12+13+14+15)/5 = 13\).

Posto médio geral: \((N+1)/2 = 16/2 = 8\).

Passo 3: calcular \(H\).

\[H = \frac{12}{15 \times 16}\left[5(3-8)^2 + 5(8-8)^2 + 5(13-8)^2\right]\] \[= \frac{12}{240}\left[5 \times 25 + 0 + 5 \times 25\right] = 0{,}05 \times 250 = 12{,}50\]

Valor-p (\(\chi^2\) com \(gl = 2\)): \(p = P(\chi^2_2 \geq 12{,}50) \approx 0{,}002\).

Decisão: rejeitamos \(H_0\). Os três grupos de terapia diferem significativamente nos escores de ansiedade.

Dois painéis: o da esquerda mostra stripcharts dos escores de ansiedade por grupo de terapia, o da direita mostra a distribuição qui-quadrado com a região de rejeição e a estatística H

Testes post-hoc: teste de Dunn

Assim como a ANOVA, um resultado significativo de Kruskal-Wallis só diz que alguns grupos diferem. O teste de Dunn realiza comparações par a par usando as somas de postos do teste original, com uma correção para comparações múltiplas (geralmente Bonferroni ou Holm).

Resultados do teste de Dunn mostrando comparações par a par entre grupos de terapia com valores-p ajustados

Os três pares diferem significativamente depois do ajuste de Bonferroni. A TCC produz os menores escores de ansiedade, seguida pelo Mindfulness, depois pelo Controle.

Executando o teste em R

O próprio teste e as duas alternativas post-hoc mostradas acima são cada uma uma única chamada de função:

# Kruskal-Wallis test
kruskal.test(score ~ group, data = df_anx)

# Dunn's post-hoc test with Bonferroni correction
library(dunn.test)
dunn.test(df_anx$score, df_anx$group, method = "bonferroni")

# Or with the FSA package (Holm correction)
library(FSA)
dunnTest(score ~ group, data = df_anx, method = "holm")

💡 Kruskal-Wallis vs. ANOVA de um fator: eficiência

Quando a suposição de normalidade se mantém, o teste de Kruskal-Wallis tem cerca de 95,5% do poder da ANOVA de um fator (a mesma eficiência relativa assintótica do teste de Wilcoxon vs. o teste t). Para distribuições não normais, Kruskal-Wallis pode ser substancialmente mais poderoso. O custo de usar Kruskal-Wallis quando a ANOVA é válida é pequeno; o custo de usar ANOVA quando Kruskal-Wallis é necessário pode ser grande.