Come generare una distribuzione normale in python (con esempi)


Puoi generare rapidamente una distribuzione normale in Python utilizzando la funzione numpy.random.normal() , che utilizza la seguente sintassi:

 numpy. random . normal (loc=0.0, scale=1.0, size=None)

Oro:

  • loc: Media della distribuzione. Il valore predefinito è 0.
  • scala: deviazione standard della distribuzione. Il valore predefinito è 1.
  • dimensione: dimensione del campione.

Questo tutorial mostra un esempio di utilizzo di questa funzione per generare una distribuzione normale in Python.

Correlati: Come creare una curva a campana in Python

Esempio: generazione di una distribuzione normale in Python

Il codice seguente mostra come generare una distribuzione normale in Python:

 from numpy. random import seed
from numpy. random import normal

#make this example reproducible
seed(1)

#generate sample of 200 values that follow a normal distribution 
data = normal (loc=0, scale=1, size=200)

#view first six values
data[0:5]

array([ 1.62434536, -0.61175641, -0.52817175, -1.07296862, 0.86540763])

Possiamo trovare rapidamente la media e la deviazione standard di questa distribuzione:

 import numpy as np

#find mean of sample
n.p. mean (data)

0.1066888148479486

#find standard deviation of sample
n.p. std (data, ddof= 1 )

0.9123296653173484

Possiamo anche creare un rapido istogramma per visualizzare la distribuzione dei valori dei dati:

 import matplotlib. pyplot as plt
count, bins, ignored = plt. hist (data, 30)
plt. show ()

Genera una distribuzione normale in Python

Possiamo anche eseguire un test di Shapiro-Wilk per vedere se il set di dati proviene da una popolazione normale:

 from scipy. stats import shapiro

#perform Shapiro-Wilk test
shapiro(data)

ShapiroResult(statistic=0.9958659410, pvalue=0.8669294714)

Il valore p del test risulta essere 0,8669 . Poiché questo valore non è inferiore a 0,05, possiamo supporre che i dati del campione provengano da una popolazione distribuita normalmente.

Questo risultato non dovrebbe sorprendere poiché abbiamo generato i dati utilizzando la funzione numpy.random.normal() , che genera un campione casuale di dati da una distribuzione normale.

Aggiungi un commento

Il tuo indirizzo email non sarà pubblicato. I campi obbligatori sono contrassegnati *