Date normale

Design experimental în Python

James Chapman

Curriculum Manager, DataCamp

Distribuția normală

 

  • Forma clasică de „clopot"
  • Legătură cu scorul z

$$ {z} = \frac{x-\mu}{\sigma}$$

  • Medie = 0, abatere standard = 1
    • „Cu câte abateri standard este acest punct față de medie?"
    • „Care este probabilitatea de a obține acest scor?"

 

Un grafic al unei curbe în formă de clopot tipice, o linie albastră pe fundal alb.

Design experimental în Python

Date normale și teste statistice

 

  • Necesară pentru testele parametrice
  • Teste neparametrice: nu presupun date normale

 

Un grafic al unei curbe în formă de clopot tipice, o linie albastră pe fundal alb.

Design experimental în Python

Normală, Z și alpha

 

  • Legătură esențială cu nivelul de semnificație ($\alpha$)
  • Compararea valorii p cu $\alpha$
  • Probabilitatea unei erori de tip I

 

O distribuție normală cu două zone mici la fiecare coadă, colorate în negru

Design experimental în Python

Vizualizarea datelor normale

 

sns.displot(data=salaries,
            x='salary',
            kind="kde")
plt.show()

 

O distribuție în formă de clopot, mai înaltă și mai îngustă decât una clasică, dar cu forma tipică de clopot

Design experimental în Python

Grafice QQ

Grafic QQ: compararea datelor cu o distribuție specifică

from statsmodels.graphics.gofplots import qqplot
from scipy.stats.distributions import norm
qqplot(salaries['salary'], 
       line='s', 
       dist=norm)
plt.show()
  • Ideal: puncte aproape de linie
  • Rău: deviație la capete

 

Un grafic QQ în care toate punctele sunt aproape de linia la 45 de grade

Un grafic QQ în care punctele din mijloc urmează linia, dar la ambele capete se curbează spre interior

Design experimental în Python

Teste de normalitate

 

  • Shapiro-Wilk (recomandat pentru seturi mici)
  • D'Agostino $K^2$ (utilizează curtoza și asimetria)
  • Anderson-Darling (returnează o listă de valori)

 

$H_0$ = „Datele provin dintr-o distribuție normală"

Design experimental în Python

Test Shapiro-Wilk

 

from scipy.stats import shapiro
alpha = 0.05

stat, p = shapiro(salaries['salary']) print(f"p: {round(p,4)} test stat: {round(stat,4)}")
p: 0.8293 test stat: 0.9956
  • p > alpha
    • $H_0$ nu este respinsă → probabil normală
Design experimental în Python

Test Anderson-Darling

from scipy.stats import anderson
result = anderson(x=salaries['salary'], dist="norm")
print(round(result.statistic,4))
print(result.significance_level)
print(result.critical_values)
0.2748
[15.  10.   5.   2.5  1. ]
[0.572 0.651 0.781 0.911 1.084]
  • 0.2748 < [0.572 0.651 0.781 0.911 1.084]
    • $H_0$ nu este respinsă → probabil normală
Design experimental în Python

Să exersăm!

Design experimental în Python

Preparing Video For Download...