def test_plot_quarter(): dta = sm.datasets.macrodata.load_pandas().data dates = lmap('Q'.join, zip(dta.year.astype(int).apply(str), dta.quarter.astype(int).apply(str))) # test dates argument quarter_plot(dta.unemp.values, dates) plt.close('all') # test with a DatetimeIndex with no freq parser = pd.tseries.tools.parse_time_string dta.set_index(pd.DatetimeIndex((x[0] for x in map(parser, dates))), inplace=True) quarter_plot(dta.unemp) plt.close('all') # w freq # see pandas #6631 dta.index = pd.DatetimeIndex((x[0] for x in map(parser, dates)), freq='QS-Oct') quarter_plot(dta.unemp) plt.close('all') # w PeriodIndex dta.index = pd.PeriodIndex((x[0] for x in map(parser, dates)), freq='Q') quarter_plot(dta.unemp) plt.close('all')
def test_plot_quarter(): dta = sm.datasets.macrodata.load_pandas().data dates = lmap( 'Q'.join, zip( dta.year.astype(int).apply(str), dta.quarter.astype(int).apply(str))) # test dates argument quarter_plot(dta.unemp.values, dates) plt.close('all') # test with a DatetimeIndex with no freq parser = pd.datetools.parse_time_string dta.set_index(pd.DatetimeIndex((x[0] for x in map(parser, dates))), inplace=True) quarter_plot(dta.unemp) plt.close('all') # w freq # see pandas #6631 dta.index = pd.DatetimeIndex((x[0] for x in map(parser, dates)), freq='QS-Oct') quarter_plot(dta.unemp) plt.close('all') # w PeriodIndex dta.index = pd.PeriodIndex((x[0] for x in map(parser, dates)), freq='Q') quarter_plot(dta.unemp) plt.close('all')
import numpy as np _quarter_to_day = { "1": (3, 31), "2": (6, 30), "3": (9, 30), "4": (12, 31), "I": (3, 31), "II": (6, 30), "III": (9, 30), "IV": (12, 31) } _mdays = [31, 28, 31, 30, 31, 30, 31, 31, 30, 31, 30, 31] _months_with_days = lzip(lrange(1, 13), _mdays) _month_to_day = dict(zip(map(str, lrange(1, 13)), _months_with_days)) _month_to_day.update( dict( zip([ "I", "II", "III", "IV", "V", "VI", "VII", "VIII", "IX", "X", "XI", "XII" ], _months_with_days))) # regex patterns _y_pattern = r'^\d?\d?\d?\d$' _q_pattern = r''' ^ # beginning of string \d?\d?\d?\d # match any number 1-9999, includes leading zeros (:?q) # use q or a : as a separator
_quarter_to_day = { "1" : (3, 31), "2" : (6, 30), "3" : (9, 30), "4" : (12, 31), "I" : (3, 31), "II" : (6, 30), "III" : (9, 30), "IV" : (12, 31) } _mdays = [31, 28, 31, 30, 31, 30, 31, 31, 30, 31, 30, 31] _months_with_days = lzip(lrange(1,13), _mdays) _month_to_day = dict(zip(map(str,lrange(1,13)), _months_with_days)) _month_to_day.update(dict(zip(["I", "II", "III", "IV", "V", "VI", "VII", "VIII", "IX", "X", "XI", "XII"], _months_with_days))) # regex patterns _y_pattern = '^\d?\d?\d?\d$' _q_pattern = ''' ^ # beginning of string \d?\d?\d?\d # match any number 1-9999, includes leading zeros (:?q) # use q or a : as a separator ([1-4]|(I{1,3}V?)) # match 1-4 or I-IV roman numerals
x = (1e-4+np.random.randn(nobs)).cumsum() mcres[ii] = unitroot_adf(x, 2,trendorder=0, autolag=None)[0] print((mcres<-2.57).sum()) print(np.histogram(mcres)) mcressort = np.sort(mcres) for ratio in [0.01, 0.025, 0.05, 0.1]: print(ratio, mcressort[int(nrepl*ratio)]) print('critical values in Green table 20.5') print('sample size = 100') print('with constant') print('0.01: -19.8, 0.025: -16.3, 0.05: -13.7, 0.01: -11.0, 0.975: 0.47') print('0.01: -3.50, 0.025: -3.17, 0.05: -2.90, 0.01: -2.58, 0.975: 0.26') crvdg = dict([map(float,s.split(':')) for s in ('0.01: -19.8, 0.025: -16.3, 0.05: -13.7, 0.01: -11.0, 0.975: 0.47'.split(','))]) crvd = dict([map(float,s.split(':')) for s in ('0.01: -3.50, 0.025: -3.17, 0.05: -2.90, 0.01: -2.58, 0.975: 0.26'.split(','))]) ''' >>> crvd {0.050000000000000003: -13.699999999999999, 0.97499999999999998: 0.46999999999999997, 0.025000000000000001: -16.300000000000001, 0.01: -11.0} >>> sorted(crvd.values()) [-16.300000000000001, -13.699999999999999, -11.0, 0.46999999999999997] ''' #for trend = 0 crit_5lags0p05 =-4.41519 + (-14.0406)/nobs + (-12.575)/nobs**2 print(crit_5lags0p05) adfstat, _,_,resstore = unitroot_adf(x, 2,trendorder=0, autolag=None, store=1)