Spaces:
Runtime error
Runtime error
File size: 726 Bytes
3380ee9 |
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 |
"""File for updating prior into posterior"""
import pymc3 as pm
class PosteriorGenerator:
def __init__(self, prices, demands):
self.price_observations = prices
self.demand_observations = demands
def calc_posterior(self, samples=1000):
with pm.Model():
elas = pm.Normal("elas",mu=-0.5, sd=0.5)
shape = pm.Normal("shape",mu=0, sd=2)
stdev = pm.Exponential("stdev",lam=1)
y_hat = pm.math.dot(elas, self.price_observations) + shape
log_observations = pm.math.log(self.demand_observations)
_ = pm.Normal("demand", mu=y_hat, observed=log_observations, sigma=stdev)
trace = pm.sample(samples)
return trace
|