Source code for openest.lincombo.montecarlo

import numpy as np
from scipy.stats import norm
import statsmodels.api as sm
from multi_draws import MultivariateDraws

[docs]def regress_draws(means, serrs, XX, count=1000): print "Making MC draws..." betas = [] for ii in range(count): yy = norm.rvs(means, serrs, 1) betas.append(sm.OLS(yy, XX).fit().params) return np.array(betas)
[docs]def regress_summary(means, serrs, XX, count=1000): betas = regress_draws(means, serrs, XX, count=count) beta_mean = np.mean(betas, axis=0) beta_serr = np.std(betas, axis=0) return beta_mean, beta_serr
[docs]def regress_distribution(means, serrs, XX, count=1000): betas = regress_draws(means, serrs, XX, count=count) return MultivariateDraws(betas)