🎉 75% of content is free forever — Unlock Premium from $10/mo →
CW
Search courses…
💼 Servicesℹ️ About✉️ ContactView Pricing Plansfrom $10

Geometric Distribution — Waiting Time for First Success

Foundations of StatisticsProbability Distributions🟢 Free Lesson

Advertisement

Geometric Distribution

Probability Distributions

How Long Until First Success?

The geometric distribution answers a natural question: how long must we wait for the first success? It is the discrete analogue of the exponential distribution and the only discrete distribution possessing the memoryless property.

  • Quality control — how many items until first defect
  • Recruiting — how many interviews until first hire
  • Sales — how many calls until first sale
  • Sports — how many games until first win

The geometric distribution is the mathematics of waiting — and its memoryless property makes it unique.


Core Concepts

The geometric distribution answers a natural question: how long must we wait for the first success in a sequence of independent Bernoulli trials? It is the discrete analogue of the exponential distribution and the only discrete distribution possessing the memoryless property.


PMF Derivation and Verification


CDF


Mean and Variance: Derivation


The Memoryless Property


Hazard Function

The geometric distribution has a constant hazard rate — the probability of success on any trial, given that we haven't succeeded yet, is always . This is another manifestation of memorylessness and distinguishes the geometric from distributions with increasing or decreasing hazard rates.


Relationship to Other Distributions


Worked Example: Quality Control


Python Implementation

import numpy as np
from scipy import stats

np.random.seed(42)

# Simulate geometric random variables
p = 0.3
n = 10000
samples = np.random.geometric(p, size=n)

# Verify mean and variance
print(f"Geometric(p={p})")
print(f"  Empirical mean:     {np.mean(samples):.4f}  (theoretical: {1/p:.4f})")
print(f"  Empirical variance: {np.var(samples, ddof=0):.4f}  (theoretical: {(1-p)/p**2:.4f})")

# Verify memoryless property
for s in [5, 10, 20]:
    given_gt_s = samples[samples > s]
    empirical = np.mean(given_gt_s > s + 5)  # P(X > s+5 | X > s) ≈ P(X > 5)
    theoretical = (1-p)**5
    print(f"  P(X > {s+5} | X > {s}): empirical={empirical:.4f}, theoretical P(X>5)={theoretical:.4f}")

Python Implementation: Hazard Rate Verification

import numpy as np

np.random.seed(42)

# Verify constant hazard rate for geometric distribution
p = 0.25
n = 50000
samples = np.random.geometric(p, size=n)

print(f"Geometric(p={p}) — Hazard Rate Verification")
print(f"{'k':>4} {'P(X=k | X>=k)':>14} {'p (theoretical)':>16}")
print("-" * 36)

for k in [1, 2, 3, 5, 10, 20]:
    given_ge_k = samples[samples >= k]
    if len(given_ge_k) > 0:
        hazard = np.mean(given_ge_k == k)
        print(f"{k:>4} {hazard:>14.4f} {p:>16.4f}")

# Show that geometric inter-arrival times in Bernoulli process are geometric
print(f"\nBernoulli process inter-arrival times:")
bernoulli = np.random.binomial(1, p, size=10000)
successes = np.where(bernoulli == 1)[0]
inter_arrival = np.diff(np.concatenate([[-1], successes]))
print(f"  Mean inter-arrival: {np.mean(inter_arrival):.4f} (theoretical: {1/p:.4f})")

Key Takeaways

Need Expert Statistics Help?

Get personalized tutoring, project support, or professional consulting.

Advertisement