Statistics
Intermediate 16 min read Statistics

Common Probability Distributions

Shapes that real data falls into

Bernoulli/Binomial, Poisson, Uniform, Normal and Exponential are the workhorses: they model conversions, counts over time, noise, rates and wait times — and they determine which statistical tests are valid.

BernoulliBinomialPoissonuniformexponentialdistribution family
Prerequisites: Probability Basics
Before we start

What you will learn

  • Match business situations to distribution families
  • Interpret each distribution's parameters
  • Recognize that test choice depends on distribution assumptions
Introduction

What is this?

A distribution is a rule assigning probability to every outcome of a random variable. Discrete families (Bernoulli: one yes/no; Binomial: k successes in n trials; Poisson: events per interval) model counts. Continuous families (Uniform: equal everywhere; Normal: the bell curve; Exponential: waiting times) model measurements. Choosing the right family changes every downstream statistical decision.

Motivation

Why do you need it?

  • Conversion rate = a Bernoulli/Binomial process; test statistics assume its variance.
  • Support-ticket arrivals and ad clicks are Poisson counts.
  • Service latency and customer wait times are typically Exponential or right-skewed.
  • The Normal appears in error terms and via the CLT, anchoring most parametric tests.
Think about it

Mental model

Imagine

A toolkit with one tool per joint type

Think of

Distribution families per data situation

You wouldn't use a flathead screwdriver on a hex bolt; you wouldn't fit a Normal to customer wait times. Match the family to the mechanism that produced the data.

Mechanics

How it works

  • Bernoulli(p): 1 with probability p, 0 otherwise — one coin flip of a biased coin.
  • Binomial(n, p): sum of n independent Bernoulli draws in the same p — k successes.
  • Poisson(λ): counts of events in a fixed window when rate is λ and events are independent.
  • Uniform(a, b): every value in [a, b] equally likely — the 'no information' prior.
  • Normal(μ, σ): symmetric bell — the additive-noise distribution and CLT limit.
  • Exponential(λ): time until the next Poisson event — memoryless waiting time.

Picking a family by question type.

Yes/no outcome?
Count in a window?
Time until next event?
Continuous symmetric measurement?
Posteriors / default prior
Hands-on

Examples

Sample from distributions with numpy

Sample from distributions with numpy
import numpy as np
rng = np.random.default_rng(7)
print(rng.binomial(n=100, p=0.3, size=5)) # successes out of 100 trials
print(rng.poisson(lam=4, size=5)) # events per day, mean 4
print(rng.normal(loc=0, scale=1, size=5)) # standard normal draws
print(rng.exponential(scale=2, size=5)) # wait times, mean 2

One generator, four families. Binomial spreads around 30, Poisson around 4, Normal around 0 with std 1, Exponential with mean 2 but a long right tail — all visible in the printed samples.

Real world

In production

  • A growth team models conversion as Binomial and chooses a chi-square test accordingly.
  • An SRE team fits Poisson to alert counts and sets a p95 anticipile alert when arrivals exceed a threshold.
  • A latency team logs Exponential-like wait times, so they report percentiles rather than mean ± std.
Guidelines

Best practices

  • Pick the family from the data's generating mechanism, not from convenience.
  • Verify fit with a Q-Q plot or chi-square goodness-of-fit before assuming.
  • Poisson for counts, Normal for symmetrized measurements, Exponential for waits.
Watch out

Common mistakes

  • Forcing Normal on right-skewed counts and running tests that require symmetry.
  • Using Binomial variance on Poisson data (variance = mean for Poisson).
  • Assuming the process is memoryless just because you picked Exponential.
When things break

Debugging tips

  • For count data, check var ≈ mean to justify Poisson; if var >> mean, you have over-dispersion.
  • Make a quick histogram and compare against the family's shape before running tests.
  • When a 'Normal-looking' histogram has a long tail, try log or Box-Cox and re-check.
Interviews

Interview checkpoint

Test yourself

Quick quiz

0/2
1

You count support tickets landing each hour. Which family fits?

2

The Expoential distribution is a good model for 'time until the next event' in a Poisson process.

Go deeper

Official documentation