random
El módulo se utiliza para generar números aleatorios en Python. En realidad, no es aleatorio, sino que se usa para generar números pseudoaleatorios. Eso implica que estos números generados aleatoriamente pueden determinarse.
aleatorio.expovariable()
expovariate()
es un método incorporado del random
módulo. Se utiliza para devolver un número de punto flotante aleatorio con distribución exponencial .
Sintaxis: random.expovariate(lambda)
Parámetros:
lambda: un valor distinto de ceroDevuelve: un número flotante de distribución exponencial aleatoria
si el parámetro es positivo, los resultados van de 0 a infinito positivo
si el parámetro es negativo, los resultados van de 0 a infinito negativo
Ejemplo 1:
# import the random module import random # determining the values of the parameter lambda = 1.5 # using the expovariate() method print(random.expovariate(lambda))
Producción :
0.22759592233982198
Ejemplo 2: podemos generar el número varias veces y trazar un gráfico para observar la distribución exponencial.
# import the required libraries import random import matplotlib.pyplot as plt # store the random numbers in a # list nums = [] alpha = 3 for i in range(100): temp = random.paretovariate(alpha) nums.append(temp) # plotting a graph plt.plot(nums) plt.show()
Salida:
Ejemplo 3: Podemos crear un histograma para observar la densidad de la distribución exponencial.
# import the required libraries import random import matplotlib.pyplot as plt # store the random numbers in a list nums = [] lambda = 1.5 for i in range(10000): temp = random.expovariate(lambda) nums.append(temp) # plotting a graph plt.hist(nums, bins = 200) plt.show()
Producción :