from etrics.Utilities import Timing with Timing("time to print", True): print("hello world") from etrics import quantreg from etrics.quantreg import main, main_2 main() main_2() import numpy as np from scipy.stats.distributions import norm def createData(theta, form, N): beta = theta["beta"] X = np.matrix([np.repeat(1, N), norm.rvs(loc=4, scale=2, size=N), norm.rvs(loc=5, scale=1, size=N)]) eps = np.matrix(norm.rvs(loc=0, scale=1, size=N)) return [X.T * np.matrix(beta).T + eps.T, X.T] def estimateModel(data): import statsmodels.regression.linear_model as model res = model.OLS(data[0], data[1]).fit() return res.params from etrics.Simulation import Simulation, Progress, onWarning, Results x = Simulation("/tmp/statefile.tmp") x.AddStatistics({"95th Quantile": lambda x: [np.percentile(x, 95, axis=0)]}, type=Results.Original) x.SetIdentifiedParameters([1,2,3], ("beta{} "*3).format(1,2,3).split()) x.SetStructuralParameters({"beta":[1,2,3]}, None) x.SetSamplingParameters(N=1000) x.SetEstimationParameters() x.Generating += createData x.Estimating += estimateModel x.PreEstimation += Progress x.Warning += onWarning x.SetWritingOptions("/tmp/table.tmp") x.Simulate(100) res1 = x.GetResults(Results.Original) res2 = x.GetResults(Results.Bias) print(res2) from IPython.display import Latex with open("/tmp/table.tmp", 'r') as t: print(t.read())