Distribuciones normales
Para generar un conjunto de valores gausianos, usaremos la función normal().
12mu, sigma =10,2# media y desviación estándarprint(random.normal(mu, sigma,10))
pitón
12[6.5004690510.6853608112.306071619.4951279311.9626415711.0284376810.442359347.859913349.6210083410.51000289]
pitón
Distribuciones binomiales
NumPy proporciona funcionalidad para generar valores de varias distribuciones, incluyendo binomial, beta, Pareto, Poisson, etc. Veamos cómo generaríamos algunos números aleatorios a partir de una distribución binomial.
Digamos que quisiéramos simular el resultado de 10 tiradas de monedas.
12n, p =10,.5s = np.random.binomial(n, p,5)
pitón
Esto ejecuta 5 pruebas diferentes de los 10 tiros de la moneda y devuelve el número de veces que la moneda cae en cara (o cruz, su llamada) para cada una de esas pruebas:
1[54571]
pitón
Distribuciones de elección
A veces, quieres ser capaz de elegir elementos al azar de una lista. Por ejemplo, digamos que quieres elegir al azar entre el rojo (p=0,25), el verde (p=0,5) y el azul (p=0,25). Eso se vería algo así:
1print(random.choice([$0027red$0027,$0027green$0027,$0027blue$0027],5, p=[0.25,0.5,0.25]))
pitón
La matriz resultante se ve así:
1[$0027green$0027$0027green$0027$0027green$0027$0027blue$0027$0027red$0027]
pitón
También puedes generar elecciones aleatorias a partir de un rango de números enteros.
1print(random.choice(5,10, p=[0.2,0,0.2,0.5,0.1]))
pitón
Aquí, 0 tiene 20% de probabilidad de ocurrir, 1 tiene 0%, 2 tiene 20%, y así sucesivamente. Este es el resultado:
1[3233023323]
pitón
Usando la función choice(), puede crear números aleatorios a partir de distribuciones arbitrarias usando datos de frecuencia.