Open In App

random.expovariate() function in Python

Last Updated : 23 Dec, 2021
Improve
Improve
Like Article
Like
Save
Share
Report

random module is used to generate random numbers in Python. Not actually random, rather this is used to generate pseudo-random numbers. That implies that these randomly generated numbers can be determined.

random.expovariate()

expovariate() is an inbuilt method of the random module. It is used to return a random floating point number with exponential distribution.

Syntax : random.expovariate(lambda)

Parameters :
lambda : a non zero value

Returns : a random exponential distribution floating number
if the parameter is positive, the results range from 0 to positive infinity
if the parameter is negative, the results range from 0 to negative infinity

Example 1:




# import the random module
import random
  
# determining the values of the parameter
lambda = 1.5
  
# using the expovariate() method
print(random.expovariate(lambda))


Output :

0.22759592233982198

Example 2: We can generate the number multiple times and plot a graph to observe the exponential distribution.




# 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()


Output :

Example 3: We can create a histogram to observe the density of the exponential distribution.




# 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()


Output :



Like Article
Suggest improvement
Previous
Next
Share your thoughts in the comments

Similar Reads