Como realizar o teste F em múltiplos níveis de uma variável no R

Vinícius Rodrigues
bio-data-blog
Published in
2 min readNov 9, 2019

Testes como F ou T devem ser realizados em dois níveis da variável de interesse por vez. Não encontrei, ainda, um pacote que compare os níveis de forma automática. Então aqui fica uma dica de como fazer de uma forma manual e prática:

Teste F

O teste F no R pode ser calculado da seguinte forma:

var.test(formula = y ~ x, data = df)

var.test é o comando para o teste F, onde: “y” é a variável resposta, “x” é a variável explicativa, e “df” é o banco de dados. Se quiser utilizar o teste T, mude para t.test.

Quando o a variável resposta possui apenas dois níveis (como “A” ou “B”) o teste é calculado sem problemas. Com mais de duas variáveis o cálculo do teste não irá funcionar desta maneira.

Para o exemplo utilizaremos o banco de dados airquality, do pacote datasets:

A variável resposta do nosso modelo será “Ozone” e a resposta será “Month”. O objetivo do exemplo será descobrir a diferença entre os meses utilizando o teste F. Se utilizar o comando acima em uma variável com mais de dois níveis, encontrará o seguinte erro:

Ou seja, o teste F só será aplicado se a variável resposta tiver dois níveis.

Teste F em múltiplos níveis

Para solucionar, uma saída prática é utilizar o operador %in% em um argumento de “subset” no teste, com os níveis que deseja comparar:

No exemplo acima, comparamos os meses “5” e “6” e, de acordo com o teste F, esses dois meses foram iguais na quantidade de ozônio (p=0.57). O próximo passo é atualizar os níveis no “subset” para comparar os demais níveis. Se quiser comparar os meses “6” e “7”, basta mudar: subset= Month %in% c(“6”, “7”).

Abraços!

Dúvidas? Visite nosso site ou mande um e-mail para viniciusbrbio@gmail.com

--

--