Skip to content

Probability Distributions Tutorial

cds.probability covers common continuous PDFs and discrete PMFs, plus reproducible sampling.

1. Continuous PDFs

from cds.probability import gaussian_pdf, uniform_pdf, exponential_pdf

print(gaussian_pdf(0.0, mu=0.0, sigma=1.0))  # peak ≈ 0.399
print(uniform_pdf(0.5, a=0.0, b=1.0))  # 1.0 on support
print(exponential_pdf(1.0, lambda_=2.0))

2. Discrete PMFs

from cds.probability import binomial_pmf, poisson_pmf

for k in range(11):
    print(k, binomial_pmf(k, n=10, p=0.5))  # symmetric around 5

for k in range(6):
    print(k, poisson_pmf(k, lambda_=3.0))

3. Reproducible Sampling

from cds.probability import uniform_sample

print(uniform_sample(0.0, 1.0, 5, seed=42))  # deterministic

Advanced distributions (v1.6)

Chi-square and Student-t quantiles, plus seeded gamma/beta samplers:

from cds.probability import chi2_ppf, sample_beta, sample_gamma, t_cdf

print(chi2_ppf(0.95, 1))  # 3.8415 — the classic χ² critical value
print(t_cdf(1.8124611228107335, 10))  # ≈ 0.95
means = sample_gamma(100_000, shape=3.0, scale=2.0, seed=42)
props = sample_beta(100_000, a=2, b=5, seed=7)

Run the full demo with python examples/probability_demo.py.