import numpy as np from scipy import stats from statsmodels.sandbox.tools.mctools import StatTestMC from statsmodels.sandbox.stats.diagnostic import ( acorr_ljungbox, unitroot_adf) def normalnoisesim(nobs=500, loc=0.0): return (loc+np.random.randn(nobs)) def lb(x): s,p = acorr_ljungbox(x, lags=4) return np.r_[s, p] mc1 = StatTestMC(normalnoisesim, lb) mc1.run(5000, statindices=range(4)) print mc1.summary_quantiles([1,2,3], stats.chi2([2,3,4]).ppf, varnames=['lag 1', 'lag 2', 'lag 3'], title='acorr_ljungbox') print '\n\n' frac = [0.01, 0.025, 0.05, 0.1, 0.975] crit = stats.chi2([2,3,4]).ppf(np.atleast_2d(frac).T) print mc1.summary_cdf([1,2,3], frac, crit, varnames=['lag 1', 'lag 2', 'lag 3'], title='acorr_ljungbox') print mc1.cdf(crit, [1,2,3])[1] #----------------------
import numpy as np from scipy import stats from statsmodels.sandbox.tools.mctools import StatTestMC from statsmodels.sandbox.stats.diagnostic import ( acorr_ljungbox, unitroot_adf) def normalnoisesim(nobs=500, loc=0.0): return (loc+np.random.randn(nobs)) def lb(x): s,p = acorr_ljungbox(x, lags=4) return np.r_[s, p] mc1 = StatTestMC(normalnoisesim, lb) mc1.run(5000, statindices=lrange(4)) print(mc1.summary_quantiles([1,2,3], stats.chi2([2,3,4]).ppf, varnames=['lag 1', 'lag 2', 'lag 3'], title='acorr_ljungbox')) print('\n\n') frac = [0.01, 0.025, 0.05, 0.1, 0.975] crit = stats.chi2([2,3,4]).ppf(np.atleast_2d(frac).T) print(mc1.summary_cdf([1,2,3], frac, crit, varnames=['lag 1', 'lag 2', 'lag 3'], title='acorr_ljungbox')) print(mc1.cdf(crit, [1,2,3])[1]) #----------------------
import numpy as np from scipy import stats from statsmodels.sandbox.tools.mctools import StatTestMC from statsmodels.sandbox.stats.diagnostic import acorr_ljungbox, unitroot_adf def normalnoisesim(nobs=500, loc=0.0): return loc + np.random.randn(nobs) def lb(x): s, p = acorr_ljungbox(x, lags=4) return np.r_[s, p] mc1 = StatTestMC(normalnoisesim, lb) mc1.run(5000, statindices=list(range(4))) print( mc1.summary_quantiles( [1, 2, 3], stats.chi2([2, 3, 4]).ppf, varnames=["lag 1", "lag 2", "lag 3"], title="acorr_ljungbox" ) ) print("\n\n") frac = [0.01, 0.025, 0.05, 0.1, 0.975] crit = stats.chi2([2, 3, 4]).ppf(np.atleast_2d(frac).T) print(mc1.summary_cdf([1, 2, 3], frac, crit, varnames=["lag 1", "lag 2", "lag 3"], title="acorr_ljungbox")) print(mc1.cdf(crit, [1, 2, 3])[1]) # ----------------------