https://github.com/pymc-devs/pymc3
Raw File
Tip revision: 3e34034c40aabc5d3c16b6ed7e2a965865fbe194 authored by Chris Fonnesbeck on 15 July 2018, 02:10:09 UTC
Merge pull request #3097 from pymc-devs/version_3.5.rc1
Tip revision: 3e34034
gelman_bioassay.py
import pymc3 as pm
from numpy import ones, array

# Samples for each dose level
n = 5 * ones(4, dtype=int)
# Log-dose
dose = array([-.86, -.3, -.05, .73])

with pm.Model() as model:

    # Logit-linear model parameters
    alpha = pm.Normal('alpha', 0, sd=100.)
    beta = pm.Normal('beta', 0, sd=1.)

    # Calculate probabilities of death
    theta = pm.Deterministic('theta', pm.math.invlogit(alpha + beta * dose))

    # Data likelihood
    deaths = pm.Binomial('deaths', n=n, p=theta, observed=[0, 1, 3, 5])


def run(n=1000):
    if n == "short":
        n = 50
    with model:
        pm.sample(n, tune=1000)

if __name__ == '__main__':
    run()
back to top