Como realizar um teste Brown – Forsythe em Python
O teste Brown-Forsythe é um teste estatístico usado para determinar se as variâncias de dois ou mais grupos são iguais. Enquanto o teste de Levene utiliza os desvios absolutos da média, o teste de Brown-Forsythe utiliza os desvios da mediana.
A hipótese nula usada no teste é a seguinte -
H0: A variância dos grupos (populações) é igual
A hipótese alternativa é que as variâncias não são iguais -
H1: A variância dos grupos (populações) não é igual
Para realizar o teste calculamos a mediana de cada grupo e os desvios absolutos da mediana. Em seguida, calculamos a estatística F com base nas variâncias desses desvios. Suponha que a estatística F calculada seja maior que o valor crítico da tabela de distribuição F. Nesse caso, rejeitamos a hipótese nula e concluímos que as variâncias dos grupos não são iguais.
Em Python, a biblioteca scipy e statsmodels fornece um método para realizar o teste Brown-Forsythe.
É importante observar que o teste de Brown-Forsythe é sensível a valores discrepantes, mas é mais robusto à não normalidade do que o teste de Levene. Geralmente é recomendado usar o teste de Brown-Forsythe se os dados não forem normais.
Teste Brown – Forsythe em Python
Sintaxe
levene(sample1, sample2, …sampleN, center=’median’, proportiontocut=0.05)
Parâmetros
sample1, sample2,…sampleN - os dados de amostra, que podem ter vários comprimentos. As amostras devem ter apenas uma dimensão para serem aceitas.
Center - Qual função de dados utilizar para o teste. "Mediana" é o padrão.
Proportiontocut - Quando o centro é "aparado", é indicado o número de pontos de dados a serem removidos de cada extremidade.
Explicação
Na função levene(), os usuários devem passar os dados de amostra unidimensionais de vários comprimentos junto com o centro do parâmetro como "Mediana". Esta função então retorna a estatística e o valor p das amostras fornecidas.
Algoritmo
Importe a função levene do scipy.
Crie as amostras de dados para as quais deseja realizar o teste de Brown-Forsythe.
-
Passe os dados de amostra para a função Levene para realizar o teste.
Obtenha estatística e p_value em retorno da função.
Você pode usar as estatísticas. Método Levene da biblioteca scipy para realizar um teste de Brown-Forsythe.
from scipy.stats import levene
group1 = [1, 2, 3, 4, 5]
group2 = [2, 3, 4, 5, 6]
group3 = [3, 4, 5, 6, 7]
statistic, pvalue = levene(group1, group2, group3)
print("statistic: ", statistic)
print("p-value: ", pvalue)
Saída
statistic: 0.0
p-value: 1.0
Aqui, como você pode ver, o valor p é 1, que é maior que 0,05. Isso significa que podemos aceitar a hipótese nula. Portanto, as variâncias de ambos os grupos são iguais. Assim, a hipótese alternativa é rejeitada.
Junto com a implementação da questão Brown-Forsythe, também pretendemos esclarecer uma confusão que os engenheiros de aprendizado de máquina geralmente têm. É como os testes Brown-Forsythe e ANOVA estão relacionados entre si.
Como o teste Brown – Forsythe e o teste ANOVA estão relacionados?
Os testes Brown-Forsythe e ANOVA (Análise de Variância) estão relacionados porque testam diferenças nas médias dos grupos. No entanto, eles testam suposições diferentes e têm aplicações diferentes.
ANOVA é um método estatístico usado para testar se existem diferenças significativas entre as médias de dois ou mais grupos. Presume que as variâncias dos grupos são iguais e que os dados são normalmente distribuídos. ANOVA é usada para determinar se as médias de dois ou mais grupos são iguais e compara as variâncias dos grupos.
O teste de Brown-Forsythe é uma variação do teste de Levene, que utiliza os desvios absolutos da média, enquanto o teste de Brown-Forsythe utiliza os desvios da mediana. Por outro lado, o teste de Brown-Forsythe é um teste de homogeneidade de variâncias, que é uma suposição necessária para ANOVA. É usado para determinar se as variâncias de dois ou mais grupos são iguais.
Na prática, é comum realizar o teste de Brown-Forsythe antes da ANOVA para verificar se a suposição de variâncias iguais é atendida. Se as variâncias não forem iguais, pode ser apropriado utilizar um teste não paramétrico como o teste de Kruskal-Wallis ou o teste ANOVA de Welch em vez do teste normal.
Casos de uso do teste Brown – Forsythe
O teste Brown-Forsythe é usado em vários campos, como biologia, medicina, psicologia, ciências sociais e engenharia, para testar variações iguais em diferentes grupos. Alguns casos de uso comuns incluem -
-
Comparar as variâncias de duas ou mais amostras - O teste Brown-Forsythe pode determinar se as variâncias de duas ou mais amostras são iguais. Por exemplo, num estudo médico, o teste pode ser utilizado para comparar as variações das medições da pressão arterial em diferentes grupos de pacientes.
Teste de homogeneidade de variâncias antes de realizar ANOVA - Como o teste de Brown-Forsythe é um teste de homogeneidade de variâncias, ele pode ser usado para verificar se a suposição de variâncias iguais é atendida antes de realizar uma ANOVA. Isso garante que os resultados da ANOVA sejam válidos.
Teste de variâncias iguais em dados distribuídos não normalmente - O teste de Brown-Forsythe é mais robusto à não normalidade do que o teste de Levene. Ele pode ser usado para testar variâncias iguais em dados distribuídos não normalmente.
Comparação de variâncias em experimentos de medidas repetidas − Ao conduzir experimentos com experimentos de medidas repetidas, pode ser útil usar o teste de Brown-Forsythe para verificar a homogeneidade das variâncias entre os grupos.
Controle de qualidade na fabricação - O teste Brown-Forsythe pode ser usado para verificar variações iguais em diferentes lotes de produção para garantir que a qualidade do produto seja consistente.
Conclusão
Concluindo, o Teste Brown-Forsythe é um método estatístico útil para detectar a presença de heterocedasticidade em um conjunto de dados. Pode ser facilmente implementado em Python usando a biblioteca scipy. Os resultados do teste podem informar decisões sobre a análise estatística apropriada a ser realizada nos dados. Ao compreender os pressupostos do teste e interpretar os resultados, os investigadores podem compreender melhor a distribuição dos seus dados e tomar decisões informadas sobre a sua análise.