Aplicando testes não paramétricos na análise experimental

Projeto experimental em Python

James Chapman

Curriculum Manager, DataCamp

Quando usar testes não paramétricos

 

  • Pressupostos paramétricos não atendidos
  • Dados em escala ordinal ou não normais
  • Robustos a outliers e não linearidade

Distribuição assimétrica

Projeto experimental em Python

Explorando métodos não paramétricos

 

  • Métodos não paramétricos para dados que não seguem pressupostos clássicos
  • Teste de Mann-Whitney U: compara dois grupos independentes
  • Teste de Kruskal-Wallis: compara mais de dois grupos

Distribuição não normal

Projeto experimental em Python

Visualizando dados não paramétricos

  • Violin plots: visualizar distribuições por grupo
condensed_data = mineral_rocks[mineral_rocks['RockType'].isin(['Igneous', 'Metamorphic'])]

sns.violinplot(x='RockType', y='MineralHardness', data=condensed_data)

Gráfico violino da Dureza Mineral por Tipo de Rocha (Ígnea vs Metamórfica)

Projeto experimental em Python

Visualizando dados não paramétricos

  • Boxen plot: melhor visão do formato da distribuição
sns.boxenplot(x='RockType', y='MineralHardness', data=mineral_rocks)

Gráfico boxen da distribuição da Dureza Mineral por tipo de rocha

Projeto experimental em Python

Aplicando testes não paramétricos - Mann-Whitney U

from scipy.stats import mannwhitneyu, kruskal
u_stat, u_pval = mannwhitneyu(
    mineral_rocks[mineral_rocks['RockType'] == 'Igneous']['MineralHardness'],
    mineral_rocks[mineral_rocks['RockType'] == 'Sedimentary']['MineralHardness']
)

print(f"Mann-Whitney U test p-value: {u_pval:.4f}")
Mann-Whitney U test p-value: 0.9724
Projeto experimental em Python

Aplicando testes não paramétricos - Kruskal-Wallis

k_stat, k_pval = kruskal(
    mineral_rocks[mineral_rocks['RockType'] == 'Igneous']['MineralHardness'],
    mineral_rocks[mineral_rocks['RockType'] == 'Sedimentary']['MineralHardness'],
    mineral_rocks[mineral_rocks['RockType'] == 'Metamorphic']['MineralHardness']
)

print(f"Kruskal-Wallis test p-value: {k_pval:.4f}")
Kruskal-Wallis test p-value: 0.0630
Projeto experimental em Python

Vamos praticar!

Projeto experimental em Python

Preparing Video For Download...