What is the Poisson distribution, and what kind of data does it model?
Poisson models the number of events in a fixed interval of time or space when events occur independently at a constant average rate. It has one parameter, the rate lambda, which is both its mean and its variance.
Explain it simply
Count how many customer calls a helpline gets in one hour, or how many typos appear on a page. There is no fixed number of trials, only a window and an average rate. Events come randomly and independently of each other.
P(k events) = e^(-lambda) x lambda^k / k!
Example
A support desk gets 3 calls per hour on average (lambda = 3).
- P(no calls) = e^-3 = 0.0498
- P(exactly 2 calls) = e^-3 x 9 / 2 = 0.2240
- P(3 or more calls) = 1 - P(0) - P(1) - P(2) = 1 - 0.0498 - 0.1494 - 0.2240 = 0.5768
from scipy.stats import poisson
print(round(poisson.pmf(0, 3), 4)) # 0.0498
print(round(poisson.pmf(2, 3), 4)) # 0.224
print(round(1 - poisson.cdf(2, 3), 4)) # 0.5768A quick diagnostic: if the variance of your counts is much bigger than the mean, the data is overdispersed and plain Poisson is a poor fit.
What to say in the interview
"Poisson counts events in a fixed window when events are independent and the average rate is constant, for example server errors per minute or accidents per day. Mean equals variance equals lambda. It relates to the exponential distribution, which models the waiting time between those events."
Common mistakes
- Using Poisson for counts with a fixed upper limit per trial, where binomial fits better.