Other Common Random Distributions in Python

📊 Other Common Random Distributions in Python

After Normal (Gaussian) distribution, NumPy can generate other statistical distributions like Uniform, Binomial, Poisson, and Exponential. Let’s go through each with examples and visualization.


1️⃣ Uniform Distribution

Generates numbers evenly distributed between low and high.


 

  • Values are equally likely between 0 and 10

  • kde=True shows the smooth density curve


2️⃣ Binomial Distribution

Simulates success/failure experiments, e.g., coin flips.


 

  • Peaks around n*p (expected value)

  • Discrete distribution


3️⃣ Poisson Distribution

Models count of events in a fixed interval.


 

  • Values are integers (0,1,2…)

  • Mean ≈ λ


4️⃣ Exponential Distribution

Models time between events, continuous.


 

  • Values ≥ 0

  • Skewed distribution, decays exponentially


5️⃣ Multinomial Distribution

Used for categorical outcomes with probabilities.


 

Output (example):

[[2 3 5]
[1 3 6]
[2 2 6]
[1 4 5]
[0 3 7]]
  • Each row = number of outcomes per trial

  • Each column = category


🧠 Summary Table of Distributions

DistributionFunctionKey ParametersType
Normalnp.random.normal()loc, scale, sizeContinuous
Uniformnp.random.uniform()low, high, sizeContinuous
Binomialnp.random.binomial()n, p, sizeDiscrete
Poissonnp.random.poisson()lam, sizeDiscrete
Exponentialnp.random.exponential()scale, sizeContinuous
Multinomialnp.random.multinomial()n, pvals, sizeDiscrete

🎯 Practice Exercises

  1. Generate 5000 numbers from uniform distribution (0–100) and plot histogram.

  2. Simulate 100 coin flips with probability 0.3 and plot frequency of heads.

  3. Generate Poisson data with λ=7 and visualize it.

  4. Generate exponential data with scale=3 and plot histogram + KDE.

You may also like...