Hướng dẫn dùng exponential pdf python



Hàm exp(x) trong Python trả về ex.


Cú pháp

Cú pháp của exp() trong Python:

Ghi chú: Hàm này không có thể truy cập trực tiếp, vì thế chúng ta cần import math module và sau đó chúng ta cần gọi hàm này bởi sử dụng đối tượng math.

Các tham số:

  • x: Đây là một biểu thức số.


Ví dụ sau minh họa cách sử dụng của hàm exp() trong Python.

import math
print ("math.exp(-45) : ", math.exp(-45))
print ("math.exp(10.15) : ", math.exp(10.15))
print ("math.exp(100) : ", math.exp(100))
print ("math.exp(math.pi) : ", math.exp(math.pi))

Chạy chương trình Python trên sẽ cho kết quả:

math.exp(-45) :  2.8625185805493937e-20
math.exp(10.15) :  25591.102206689702
math.exp(100) :  2.6881171418161356e+43
math.exp(math.pi) :  23.140692632779267



The exponential distribution is a probability distribution that is used to model the time we must wait until a certain event occurs.

If a random variable X follows an exponential distribution, then the cumulative distribution function of X can be written as:

F(x; λ) = 1 – e-λx

where:

  • λ: the rate parameter (calculated as λ = 1/μ)
  • e: A constant roughly equal to 2.718

This tutorial explains how to use the exponential distribution in Python.

How to Generate an Exponential Distribution

You can use the expon.rvs(scale, size) function from the SciPy library in Python to generate random values from an exponential distribution with a specific rate parameter and sample size:

from scipy.stats import expon

#generate random values from exponential distribution with rate=40 and sample size=10
expon.rvs(scale=40, size=10)

array([116.5368323 ,  67.23514699,  12.00399043,  40.74580584,
        34.60922432,   2.68266663,  22.70459831,  97.66661811,
         6.64272914,  46.15547298])

Note: You can find the complete documentation for the SciPy library here.

How to Calculate Probabilities Using an Exponential Distribution

Suppose the mean number of minutes between eruptions for a certain geyser is 40 minutes. What is the probability that we’ll have to wait less than 50 minutes for an eruption?

To solve this, we need to first calculate the rate parameter:

  • λ = 1/μ
  • λ = 1/40
  • λ = .025

We can plug in λ = .025 and x = 50 to the formula for the CDF:

  • P(X ≤ x) = 1 – e-λx
  • P(X ≤ 50) = 1 – e-.025(50)
  • P(X ≤ 50) = 0.7135

The probability that we’ll have to wait less than 50 minutes for the next eruption is 0.7135.

We can use the expon.cdf() function from SciPy to solve this problem in Python:

from scipy.stats import expon

#calculate probability that x is less than 50 when mean rate is 40
expon.cdf(x=50, scale=40)

0.7134952031398099

The probability that we’ll have to wait less than 50 minutes for the next eruption is 0.7135.

This matches the value that we calculated by hand.

How to Plot an Exponential Distribution

You can use the following syntax to plot an exponential distribution with a given rate parameter:

from scipy.stats import expon
import matplotlib.pyplot as plt

#generate exponential distribution with sample size 10000
x = expon.rvs(scale=40, size=10000)

#create plot of exponential distribution
plt.hist(x, density=True, edgecolor='black')

Hướng dẫn dùng exponential pdf python

Additional Resources

The following tutorials explain how to use other common distributions in Python:

How to Use the Poisson Distribution in Python
How to Use the t Distribution in Python
How to Use the Uniform Distribution in Python