Cómo generar una distribución normal en Python (con ejemplos)

Actualizado por ultima vez el 7 de mayo de 2021, por .

Puede generar rápidamente una distribución normal en Python utilizando la función numpy.random.normal () , que utiliza la siguiente sintaxis:

numpy. al azar . normal (loc = 0.0, escala = 1.0, tamaño = Ninguno)

dónde:

  • loc: Media de la distribución. El valor predeterminado es 0.
  • escala: Desviación estándar de la distribución. El valor predeterminado es 1.
  • tamaño: tamaño de la muestra.

Este tutorial muestra un ejemplo de cómo usar esta función para generar una distribución normal en Python.

Relacionado Cómo hacer una curva de campana en Python

Ejemplo: generar una distribución normal en Python

El siguiente código muestra cómo generar una distribución normal en Python:

de numpy. semilla de
 importación aleatoria  de numpy. importación aleatoria normal 

#Haga que este ejemplo sea reproducible
semilla (1)

#generar muestra de 200 valores que siguen una distribución normal 
 datos = normal (loc = 0, escala = 1, tamaño = 200)

#ver datos de los primeros seis valores
 [0: 5]

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

Podemos encontrar rápidamente la desviación estándar y media de esta distribución:

importar numpy como np

#find media de la muestra
notario público. media (datos)

0.1066888148479486

# encontrar la desviación estándar de la muestra
notario público. std (datos, ddof = 1 )

0.9123296653173484

También podemos crear un histograma rápido para visualizar la distribución de valores de datos:

importar matplotlib. pyplot  como plt
count, bins, ignored = plt. hist (datos, 30)
plt. mostrar ()

Generar distribución normal en Python

Incluso podemos realizar una prueba de Shapiro-Wilk para ver si el conjunto de datos proviene de una población normal:

de scipy. estadísticas de  importación shapiro

# realizar la prueba Shapiro-Wilk
 shapiro (datos)

ShapiroResult (estadístico = 0.9958659410, pvalue = 0.8669294714)

El valor p de la prueba resulta ser 0,8669 . Dado que este valor no es menor que .05, podemos asumir que los datos de la muestra provienen de una población que se distribuye normalmente.

Este resultado no debería sorprender, ya que generamos los datos utilizando la función numpy.random.normal () , que genera una muestra aleatoria de datos que proviene de una distribución normal.

  • https://r-project.org
  • https://www.python.org/
  • https://www.stata.com/

Deja un comentario

El sesgo de agregación ocurre cuando se asume erróneamente que las tendencias observadas en los datos agregados también se aplican…
statologos comunidad-2

Compartimos información EXCLUSIVA y GRATUITA solo para suscriptores (cursos privados, programas, consejos y mucho más)

You have Successfully Subscribed!