Test di normalità

Fondamenti dell'inferenza in Python

Paul Savala

Assistant Professor of Mathematics

Altezza dei maschi USA

Un istogramma approssimativamente normale, con altezza media 180 cm, minimo 160 cm, massimo 200 cm.

Fondamenti dell'inferenza in Python

Residui del modello

Uno scatter plot con anni di servizio sull’asse x, stipendio annuo sull’asse y e una tendenza lineare positiva. È tracciata anche una linea rossa di best fit.

Attesi residui sopra e sotto la previsione in parti uguali

Fondamenti dell'inferenza in Python

Residui del modello

Un istogramma con "residuo (errore)" sull’asse x, "conteggio" sull’asse y e una distribuzione bimodale: un modo intorno a -10.000 e un altro intorno a +30.000.

Fondamenti dell'inferenza in Python

Applicazioni della normale

  • Test parametrici: verifiche d’ipotesi che assumono normalità
  • T-test per confrontare le medie:
    • Assume medie campionarie normalmente distribuite
    • Se no, le conclusioni non valgono
Fondamenti dell'inferenza in Python

Un istogramma con stipendi tra 60.000 e 95.000 sull’asse x e frequenza sull’asse y. L’istogramma è abbastanza vicino alla normale.

Fondamenti dell'inferenza in Python

Test di Anderson-Darling per la normalità

  • Verifica l’assunzione di normalità

$H_0$: i dati seguono una normale

$H_a$: i dati non seguono una normale

Fondamenti dell'inferenza in Python

Anderson-Darling in SciPy

result = stats.anderson(police_df['Annual Salary'])

result.statistic
27.41
result.critical_values
[0.574, 0.654, 0.784, 0.915, 1.088]
result.significance_level[result.statistic > result.critical_values]
[15.  10.   5.   2.5  1. ]
Fondamenti dell'inferenza in Python

Stima di una normale

mu, std = stats.norm.fit(police_df['Annual Salary'])

estimated_pct_under_70k = stats.norm.cdf(70000, loc=mu, scale=std)
print(estimated_pct_under_70k)
0.27
actual_under_70k = police_df[police_df['Annual Salary'] < 70000]

print(len(actual_under_70k) / len(police_df))
0.20
Fondamenti dell'inferenza in Python

Passiamo alla pratica !

Fondamenti dell'inferenza in Python

Preparing Video For Download...