рдкрд╛рдпрдерди рд╕рдордп рд╢реНрд░реГрдВрдЦрд▓рд╛ рд╡рд┐рд╢реНрд▓реЗрд╖рдг

рд╢реБрдн рджреЛрдкрд╣рд░, рдкреНрд░рд┐рдп рдкрд╛рдардХреЛрдВред
рдЖрдЬ рдХреЗ рд▓реЗрдЦ рдореЗрдВ, рдореИрдВ рдЕрдЬрдЧрд░ рдФрд░ рд╕реНрдЯреИрдЯреНрд╕рдореЙрдбрд▓ рдореЙрдбреНрдпреВрд▓ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдХреЗ рд╕рдордп рд╢реНрд░реГрдВрдЦрд▓рд╛ рд╡рд┐рд╢реНрд▓реЗрд╖рдг рдХреА рдкреНрд░рдХреНрд░рд┐рдпрд╛ рдХрд╛ рд╡рд░реНрдгрди рдХрд░рдиреЗ рдХрд╛ рдкреНрд░рдпрд╛рд╕ рдХрд░реВрдВрдЧрд╛ ред рдпрд╣ рдореЙрдбреНрдпреВрд▓ рд╕рд╛рдВрдЦреНрдпрд┐рдХреАрдп рд╡рд┐рд╢реНрд▓реЗрд╖рдг рдФрд░ рдЕрд░реНрдердорд┐рддрд┐ рдХреЗ рд╕рдВрдЪрд╛рд▓рди рдХреЗ рд▓рд┐рдП рдЙрдкрдХрд░рдгреЛрдВ рдФрд░ рддрд░реАрдХреЛрдВ рдХреА рдПрдХ рд╡рд┐рд╕реНрддреГрдд рд╢реНрд░реГрдВрдЦрд▓рд╛ рдкреНрд░рджрд╛рди рдХрд░рддрд╛ рд╣реИред рдореИрдВ рдРрд╕реА рд╢реНрд░реГрдВрдЦрд▓рд╛ рдХреЗ рд╡рд┐рд╢реНрд▓реЗрд╖рдг рдХреЗ рдореБрдЦреНрдп рдЪрд░рдгреЛрдВ рдХреЛ рджрд┐рдЦрд╛рдиреЗ рдХреА рдХреЛрд╢рд┐рд╢ рдХрд░реВрдВрдЧрд╛, рдирд┐рд╖реНрдХрд░реНрд╖ рдореЗрдВ, рд╣рдо ARIMA рдореЙрдбрд▓ рдХрд╛ рдирд┐рд░реНрдорд╛рдг рдХрд░реЗрдВрдЧреЗред
рдПрдХ рдЙрджрд╛рд╣рд░рдг рдХреЗ рд░реВрдк рдореЗрдВ, рдорд╛рд╕реНрдХреЛ рдХреНрд╖реЗрддреНрд░ рдХреЗ рдПрдХ рдЧреЛрджрд╛рдо рдкрд░рд┐рд╕рд░ рдХреЗ рдЯрд░реНрдирдУрд╡рд░ рдкрд░ рд╡рд╛рд╕реНрддрд╡рд┐рдХ рдбреЗрдЯрд╛ рд▓рд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИред

рдбрд╛рдЙрдирд▓реЛрдб рдФрд░ рдкреНрд░реАрдкреНрд░реЛрд╕реЗрд╕ рдбреЗрдЯрд╛


рдЖрд░рдВрдн рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП, рдбреЗрдЯрд╛ рдЕрдкрд▓реЛрдб рдХрд░реЗрдВ рдФрд░ рдЗрд╕реЗ рджреЗрдЦреЗрдВ:

from pandas import read_csv, DataFrame import statsmodels.api as sm from statsmodels.iolib.table import SimpleTable from sklearn.metrics import r2_score import ml_metrics as metrics In [2]: dataset = read_csv('tovar_moving.csv',';', index_col=['date_oper'], parse_dates=['date_oper'], dayfirst=True) dataset.head() 

Otgruzkapriemka
date_oper
2009-09-01179,667276,712
2009-09-02177,670164,999
2009-09-03152,112189,181
2009-09-04142,938254,581
2009-09-05130,741192,486


рддреЛ, рдЬреИрд╕рд╛ рдХрд┐ рдЖрдк read_csv () рдлрд╝рдВрдХреНрд╢рди рдХреЛ рджреЗрдЦ рд╕рдХрддреЗ рд╣реИрдВ, рдЗрд╕ рдорд╛рдорд▓реЗ рдореЗрдВ, рдЙрдкрдпреЛрдЧ рдХрд┐рдП рдЧрдП рдХреЙрд▓рдо рдФрд░ рдЗрдВрдбреЗрдХреНрд╕ рдХреЛ рдирд┐рд░реНрджрд┐рд╖реНрдЯ рдХрд░рдиреЗ рд╡рд╛рд▓реЗ рдорд╛рдкрджрдВрдбреЛрдВ рдХреЛ рдирд┐рд░реНрджрд┐рд╖реНрдЯ рдХрд░рдиреЗ рдХреЗ рдЕрд▓рд╛рд╡рд╛, рддрд┐рдерд┐ рдХреЗ рд╕рд╛рде рдХрд╛рдо рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП 3 рдФрд░ рдкреИрд░рд╛рдореАрдЯрд░ рд╣реИрдВред рдЖрдЗрдП рд╣рдо рдЙрди рдкрд░ рдЕрдзрд┐рдХ рд╡рд┐рд╕реНрддрд╛рд░ рд╕реЗ рдзреНрдпрд╛рди рджреЗрдВред
parse_dates рд╕реНрддрдВрдн рдирд╛рдореЛрдВ рдХреЛ DateTime рдкреНрд░рдХрд╛рд░ рдореЗрдВ рдкрд░рд┐рд╡рд░реНрддрд┐рдд рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдирд┐рд░реНрджрд┐рд╖реНрдЯ рдХрд░рддрд╛ рд╣реИред рдпрд╣ рдзреНрдпрд╛рди рджреЗрдиреЗ рдпреЛрдЧреНрдп рд╣реИ рдХрд┐ рдпрджрд┐ рдЗрд╕ рдХреЙрд▓рдо рдореЗрдВ рдЦрд╛рд▓реА рдорд╛рди рд╣реИрдВ, рддреЛ рдкрд╛рд░реНрд╕рд┐рдВрдЧ рд╡рд┐рдлрд▓ рд╣реЛ рдЬрд╛рдПрдЧреА рдФрд░ рдЯрд╛рдЗрдк рдСрдмреНрдЬреЗрдХреНрдЯ рдХрд╛ рдПрдХ рдХреЙрд▓рдо рд╡рд╛рдкрд╕ рдЖ рдЬрд╛рдПрдЧрд╛ред рдЗрд╕рд╕реЗ рдмрдЪрдиреЗ рдХреЗ рд▓рд┐рдП, Keep_default_na = рдЧрд▓рдд рдкреИрд░рд╛рдореАрдЯрд░ рдЬреЛрдбрд╝реЗрдВред
рдЕрдВрддрд┐рдо рдбреЗрдлрд░реНрд╕реНрдЯ рдкреИрд░рд╛рдореАрдЯрд░ рдкрд╛рд░реНрд╕рд┐рдВрдЧ рдлрд╝рдВрдХреНрд╢рди рдХреЛ рдмрддрд╛рддрд╛ рд╣реИ рдХрд┐ рд▓рд╛рдЗрди рдореЗрдВ рдкрд╣рд▓рд╛ рджрд┐рди рдЬрд╛рдиреЗ рд╡рд╛рд▓рд╛ рдкрд╣рд▓рд╛ рд╣реИ, рди рдХрд┐ рдЗрд╕рдХреЗ рд╡рд┐рдкрд░реАрддред рдпрджрд┐ рдпрд╣ рдкреИрд░рд╛рдореАрдЯрд░ рд╕реЗрдЯ рдирд╣реАрдВ рд╣реИ, рддреЛ рдлрд╝рдВрдХреНрд╢рди рд╕рд╣реА рддрд░реАрдХреЗ рд╕реЗ рддрд┐рдерд┐рдпреЛрдВ рдХреЛ рдкрд░рд┐рд╡рд░реНрддрд┐рдд рдирд╣реАрдВ рдХрд░ рд╕рдХрддрд╛ рд╣реИ рдФрд░ рд╕реНрдерд╛рдиреЛрдВ рдореЗрдВ рдорд╣реАрдиреЗ рдФрд░ рджрд┐рди рдХреЛ рднреНрд░рдорд┐рдд рдХрд░ рд╕рдХрддрд╛ рд╣реИред рдЙрджрд╛рд╣рд░рдг рдХреЗ рд▓рд┐рдП, 02/01/2013 рдХреЛ 02-01-2013 рдореЗрдВ рдмрджрд▓ рджрд┐рдпрд╛ рдЬрд╛рдПрдЧрд╛, рдЬреЛ рдЧрд▓рдд рд╣реЛрдЧрд╛ред
рд╣рдо рд╢рд┐рдкрдореЗрдВрдЯ рдХреЗ рдореВрд▓реНрдпреЛрдВ рдХреЗ рд╕рд╛рде рд╕рдордп рд╢реНрд░реГрдВрдЦрд▓рд╛ рдХреА рдПрдХ рдЕрд▓рдЧ рд╢реНрд░реГрдВрдЦрд▓рд╛ рдХрд╛ рдЪрдпрди рдХрд░рддреЗ рд╣реИрдВ:

 otg = dataset.Otgruzka otg.head() 

date_oper
2009-09-01179,667
2009-09-02177,670
2009-09-03152,112
2009-09-04142,938
2009-09-05130,741
рдирд╛рдо: Otgruzka, dtype: int64

рдЗрд╕рд▓рд┐рдП рдЕрдм рд╣рдорд╛рд░реЗ рдкрд╛рд╕ рдПрдХ рд╕рдордп рд╢реНрд░реГрдВрдЦрд▓рд╛ рд╣реИ рдФрд░ рд╣рдо рдЗрд╕рдХреЗ рд╡рд┐рд╢реНрд▓реЗрд╖рдг рдХреЗ рд▓рд┐рдП рдЖрдЧреЗ рдмрдврд╝ рд╕рдХрддреЗ рд╣реИрдВред

рд╕рдордп рд╢реНрд░реГрдВрдЦрд▓рд╛ рд╡рд┐рд╢реНрд▓реЗрд╖рдг


рдЖрд░рдВрдн рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП, рдЖрдЗрдП рд╣рдорд╛рд░реА рд╢реНрд░реГрдВрдЦрд▓рд╛ рдХреЗ рдЧреНрд░рд╛рдл рдХреЛ рдХреНрд░рдордмрджреНрдз рдХрд░реЗрдВ:

 otg.plot(figsize=(12,6)) 


рдЧреНрд░рд╛рдл рд╕реЗ рдпрд╣ рджреЗрдЦрд╛ рдЬрд╛ рд╕рдХрддрд╛ рд╣реИ рдХрд┐ рд╣рдорд╛рд░реА рд╢реНрд░реГрдВрдЦрд▓рд╛ рдореЗрдВ рдЙрддреНрд╕рд░реНрдЬрди рдХреА рдПрдХ рдЫреЛрдЯреА рд╕рдВрдЦреНрдпрд╛ рд╣реИ рдЬреЛ рдкреНрд░рд╕рд╛рд░ рдХреЛ рдкреНрд░рднрд╛рд╡рд┐рдд рдХрд░рддреА рд╣реИред рдЗрд╕рдХреЗ рдЕрд▓рд╛рд╡рд╛, рдкреНрд░рддреНрдпреЗрдХ рджрд┐рди рдХреЗ рд▓рд┐рдП рд╢рд┐рдкрдореЗрдВрдЯ рдХрд╛ рд╡рд┐рд╢реНрд▓реЗрд╖рдг рдХрд░рдирд╛ рдкреВрд░реА рддрд░рд╣ рд╕реЗ рд╕рд╣реА рдирд╣реАрдВ рд╣реИ, рдХреНрдпреЛрдВрдХрд┐, рдЙрджрд╛рд╣рд░рдг рдХреЗ рд▓рд┐рдП, рд╕рдкреНрддрд╛рд╣ рдХреЗ рдЕрдВрдд рдпрд╛ рд╢реБрд░реБрдЖрдд рдореЗрдВ рдРрд╕реЗ рджрд┐рди рд╣реЛрдВрдЧреЗ рдЬрд┐рди рдкрд░ рдорд╛рд▓ рдмрд╛рдХреА рдХреА рддреБрд▓рдирд╛ рдореЗрдВ рдмрд╣реБрдд рдЕрдзрд┐рдХ рднреЗрдЬ рджрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИред рдЗрд╕рд▓рд┐рдП, рд╕рд╛рдкреНрддрд╛рд╣рд┐рдХ рдЕрдВрддрд░рд╛рд▓ рдФрд░ рдЙрд╕ рдкрд░ рд▓рджрд╛рди рдХреЗ рдФрд╕рдд рдореВрд▓реНрдп рдкрд░ рдЬрд╛рдиреЗ рдХреЗ рд▓рд┐рдП рд╕рдордЭ рдореЗрдВ рдЖрддрд╛ рд╣реИ, рдпрд╣ рд╣рдореЗрдВ рдЙрддреНрд╕рд░реНрдЬрди рд╕реЗ рдмрдЪрд╛рдПрдЧрд╛ рдФрд░ рд╣рдорд╛рд░реА рд╕реАрдорд╛ рдореЗрдВ рдЙрддрд╛рд░-рдЪрдврд╝рд╛рд╡ рдХреЛ рдХрдо рдХрд░реЗрдЧрд╛ред рдкрдВрдбреЛрдВ рдореЗрдВ , рдЗрд╕рдХреЗ рд▓рд┐рдП рдПрдХ рд╕реБрд╡рд┐рдзрд╛рдЬрдирдХ рдкреБрдирд░рд╛рд╡рд░реНрддрди () рдлрд╝рдВрдХреНрд╢рди рд╣реИ, рдХреНрдпреЛрдВрдХрд┐ рд░рд╛рдЙрдВрдбрд┐рдВрдЧ рдЕрд╡рдзрд┐ рдФрд░ рдХреБрд▓ рдлрд╝рдВрдХреНрд╢рди рдХреЛ рдкреИрд░рд╛рдореАрдЯрд░ рдкрд╛рд╕ рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИ:

 otg = otg.resample('W', how='mean') otg.plot(figsize=(12,6)) 


рдЬреИрд╕рд╛ рдХрд┐ рдЖрдк рджреЗрдЦ рд╕рдХрддреЗ рд╣реИрдВ, рдирдП рдЪрд╛рд░реНрдЯ рдореЗрдВ рдХреЛрдИ рдЙрдЬреНрдЬреНрд╡рд▓ рдЙрддреНрд╕рд░реНрдЬрди рдирд╣реАрдВ рд╣реИ рдФрд░ рдПрдХ рд╕реНрдкрд╖реНрдЯ рдкреНрд░рд╡реГрддреНрддрд┐ рд╣реИред рдЗрд╕рд╕реЗ рд╣рдо рдпрд╣ рдирд┐рд╖реНрдХрд░реНрд╖ рдирд┐рдХрд╛рд▓ рд╕рдХрддреЗ рд╣реИрдВ рдХрд┐ рд╢реНрд░реГрдВрдЦрд▓рд╛ рд╕реНрдерд┐рд░ рдирд╣реАрдВ рд╣реИ [1] ред

 itog = otg.describe() otg.hist() itog 

рдЧрд┐рдирддреА225
рдорддрд▓рдм270858.285365
рдПрд╕рдЯреАрдбреА118371.082975
рдорд┐рдирдЯ872.857143
25%180263.428571
50%277898.714286
75%355587.285714
рдЕрдзрд┐рдХрддрдо552485.142857
dtype: float64



рдЬреИрд╕рд╛ рдХрд┐ рд╡рд┐рд╢реЗрд╖рддрд╛рдУрдВ рдФрд░ рд╣рд┐рд╕реНрдЯреЛрдЧреНрд░рд╛рдо рд╕реЗ рджреЗрдЦрд╛ рдЬрд╛ рд╕рдХрддрд╛ рд╣реИ, рд╣рдорд╛рд░реА рд╢реНрд░реГрдВрдЦрд▓рд╛ рдХрдо рд╕рдЬрд╛рддреАрдп рд╣реИ рдФрд░ рдПрдХ рдЕрдкреЗрдХреНрд╖рд╛рдХреГрдд рдЫреЛрдЯрд╛ рдмрд┐рдЦрд░рд╛рд╡ рд╣реИ, рдЬреИрд╕рд╛ рдХрд┐ рднрд┐рдиреНрдирддрд╛ рдХреЗ рдЧреБрдгрд╛рдВрдХ рд╕реЗ рд╕реНрдкрд╖реНрдЯ рд╣реИ: рдЬрд╣рд╛рдБ - рдорд╛рдирдХ рд╡рд┐рдЪрд▓рди - рдирдореВрдиреЗ рдХрд╛ рдЕрдВрдХрдЧрдгрд┐рдд рдорд╛рдзреНрдпред рд╣рдорд╛рд░реЗ рдорд╛рдорд▓реЗ рдореЗрдВ, рдпрд╣ рдмрд░рд╛рдмрд░ рд╣реИ:

 print 'V = %f' % (itog['std']/itog['mean']) 

рд╡реА = 0.437022

рд╣рдо рд╕рдорд░реВрдкрддрд╛ рдХреА рдзрд╛рд░рдгрд╛ рдХреА рдкреБрд╖реНрдЯрд┐ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рд╡рд┐рддрд░рдг рдирд╛рдордорд╛рддреНрд░ рдХреЛ рдирд┐рд░реНрдзрд╛рд░рд┐рдд рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рд╣рд░реНрдХреЗ - рдмреЗрд╣рд░ рдкрд░реАрдХреНрд╖рдг рдХрд░рддреЗ рд╣реИрдВред рдРрд╕рд╛ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП, рдПрдХ рдлрд╝рдВрдХреНрд╢рди jarque_bera () рд╣реИ , рдЬреЛ рдЗрд╕ рдЖрдВрдХрдбрд╝реЗ рдХреЗ рдореВрд▓реНрдпреЛрдВ рдХреЛ рд▓реМрдЯрд╛рддрд╛ рд╣реИ:

 row = [u'JB', u'p-value', u'skew', u'kurtosis'] jb_test = sm.stats.stattools.jarque_bera(otg) a = np.vstack([jb_test]) itog = SimpleTable(a, row) print itog 



рдЗрд╕ рдЖрдВрдХрдбрд╝реЗ рдХрд╛ рдореВрд▓реНрдп рдЗрдВрдЧрд┐рдд рдХрд░рддрд╛ рд╣реИ рдХрд┐ рд╡рд┐рддрд░рдг рдХреА рд╕рд╛рдорд╛рдиреНрдпрддрд╛ рдХреА рдЕрд╢рдХреНрдд рдкрд░рд┐рдХрд▓реНрдкрдирд╛ рдХреЛ рдХрдо рд╕рдВрднрд╛рд╡рдирд╛ ( рд╢рд╛рдпрдж> 0.05 ) рдХреЗ рд╕рд╛рде рдЦрд╛рд░рд┐рдЬ рдХрд░ рджрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИ, рдФрд░ рдЗрд╕рд▓рд┐рдП рд╣рдорд╛рд░реА рд╢реНрд░реГрдВрдЦрд▓рд╛ рдХрд╛ рд╕рд╛рдорд╛рдиреНрдп рд╡рд┐рддрд░рдг рд╣реЛрддрд╛ рд╣реИред
SimpleTable () рдлрд╝рдВрдХреНрд╢рди рдХрд╛ рдЙрдкрдпреЛрдЧ рдЖрдЙрдЯрдкреБрдЯ рд╕реНрд╡рд░реВрдкрд┐рдд рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИред рд╣рдорд╛рд░реЗ рдорд╛рдорд▓реЗ рдореЗрдВ, рдпрд╣ рдорд╛рдиреЛрдВ рдХреА рдПрдХ рд╕рд░рдгреА (2 рд╕реЗ рдЕрдзрд┐рдХ рдЖрдпрд╛рдо рдирд╣реАрдВ) рдФрд░ рд╕реНрддрдВрднреЛрдВ рдпрд╛ рдкрдВрдХреНрддрд┐рдпреЛрдВ рдХреЗ рдирд╛рдо рд╡рд╛рд▓реА рд╕реВрдЪреА рдкреНрд░рд╛рдкреНрдд рдХрд░рддрд╛ рд╣реИред
рдХрдИ рд╡рд┐рдзрд┐рдпрд╛рдБ рдФрд░ рдореЙрдбрд▓ рдХрд┐рд╕реА рд╢реНрд░реГрдВрдЦрд▓рд╛ рдХреА рд╕реНрдерд┐рд░рддрд╛ рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рдорд╛рдиреНрдпрддрд╛рдУрдВ рдкрд░ рдЖрдзрд╛рд░рд┐рдд рд╣реИрдВ, рд▓реЗрдХрд┐рди рдЬреИрд╕рд╛ рдХрд┐ рдкрд╣рд▓реЗ рдЙрд▓реНрд▓реЗрдЦ рдХрд┐рдпрд╛ рдЧрдпрд╛ рдерд╛, рд╣рдорд╛рд░реА рд╢реНрд░реГрдВрдЦрд▓рд╛ рдРрд╕реА рдирд╣реАрдВ рд╣реИред рдЗрд╕рд▓рд┐рдП, рд╕реНрдерд┐рд░рддрд╛ рдкрд░реАрдХреНрд╖рдг рдХреА рдЬрд╛рдВрдЪ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП, рдЖрдЗрдП рд╣рдо рдпреВрдирд┐рдЯ рдХреА рдЬрдбрд╝реЛрдВ рдХреА рдЙрдкрд╕реНрдерд┐рддрд┐ рдХреЗ рд▓рд┐рдП рдПрдХ рд╕рд╛рдорд╛рдиреНрдпреАрдХреГрдд рдбрд┐рдХреА-рдлреБрд▓рд░ рдкрд░реАрдХреНрд╖рдг рдХрд░реЗрдВ ред рдЗрд╕рдХреЗ рд▓рд┐рдП рд╕реНрдЯреИрдЯрд╕реНрдореЙрдбрд▓ рдореЙрдбреНрдпреВрд▓ рдореЗрдВ рдПрдХ рдПрдбрдлреБрд▓рд░ () рдлрд╝рдВрдХреНрд╢рди рд╣реИ:

 test = sm.tsa.adfuller(otg) print 'adf: ', test[0] print 'p-value: ', test[1] print'Critical values: ', test[4] if test[0]> test[4]['5%']: print '  ,   ' else: print '  ,  ' 

adf: -1.38835541357
рдкреА-рдореВрд▓реНрдп: 0.58784577297
рдорд╣рддреНрд╡рдкреВрд░реНрдг рдорд╛рди: {'5%': -2.8753374677799957, '1%': -3.4617274344627398, '10% ': -2.5741240890815571}
рдПрдХрд▓ рдЬрдбрд╝реЗрдВ рд╣реИрдВ, рдкрдВрдХреНрддрд┐ рд╕реНрдерд┐рд░ рдирд╣реАрдВ рд╣реИ


рдкреНрд░рд╕реНрддреБрдд рдкрд░реАрдХреНрд╖рдг рдиреЗ рд╢реНрд░реГрдВрдЦрд▓рд╛ рдХреЗ рдЧреИрд░-рд╕реНрдерд┐рд░рддрд╛ рдХреА рдзрд╛рд░рдгрд╛ рдХреА рдкреБрд╖реНрдЯрд┐ рдХреАред рдХрдИ рдорд╛рдорд▓реЛрдВ рдореЗрдВ, рд╢реНрд░реГрдВрдЦрд▓рд╛ рдХреЗ рдЕрдВрддрд░ рдХреЛ рд▓реЗрдиреЗ рд╕реЗ рдпрд╣ рдЕрдиреБрдорддрд┐ рджреЗрддрд╛ рд╣реИред рдпрджрд┐, рдЙрджрд╛рд╣рд░рдг рдХреЗ рд▓рд┐рдП, рд╢реНрд░реГрдВрдЦрд▓рд╛ рдХреЗ рдкрд╣рд▓реЗ рдЕрдВрддрд░ рд╕реНрдерд┐рд░ рд╣реИрдВ, рддреЛ рдЗрд╕реЗ рдПрдХ рдПрдХреАрдХреГрдд рдкреНрд░рдердо-рдХреНрд░рдо рд╢реНрд░реГрдВрдЦрд▓рд╛ рдХрд╣рд╛ рдЬрд╛рддрд╛ рд╣реИред
рддреЛ, рдЪрд▓реЛ рд╣рдорд╛рд░реА рд╢реНрд░реГрдВрдЦрд▓рд╛ рдХреЗ рд▓рд┐рдП рдПрдХреАрдХреГрдд рд╢реНрд░реГрдВрдЦрд▓рд╛ рдХреЗ рдХреНрд░рдо рдХреЛ рдкрд░рд┐рднрд╛рд╖рд┐рдд рдХрд░рддреЗ рд╣реИрдВ:

 otg1diff = otg.diff(periods=1).dropna() 

рдКрдкрд░ рджрд┐рдП рдЧрдП рдХреЛрдб рдореЗрдВ, рдЕрдВрддрд░ () рдлрд╝рдВрдХреНрд╢рди рдирд┐рд░реНрджрд┐рд╖реНрдЯ рдЕрд╡рдзрд┐ рдСрдлрд╕реЗрдЯ рдХреЗ рдмрдЧрд▓ рдореЗрдВ рдореВрд▓ рд╢реНрд░реГрдВрдЦрд▓рд╛ рдореЗрдВ рдЕрдВрддрд░ рдХреА рдЧрдгрдирд╛ рдХрд░рддрд╛ рд╣реИред рдСрдлрд╕реЗрдЯ рдЕрд╡рдзрд┐ рдХреЛ рдЕрд╡рдзрд┐ рдкреИрд░рд╛рдореАрдЯрд░ рдХреЗ рд░реВрдк рдореЗрдВ рдкрд╛рд░рд┐рдд рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИред рдХреНрдпреЛрдВрдХрд┐ рдЪреВрдВрдХрд┐ рдкрд╣рд▓рд╛ рдореВрд▓реНрдп рдЕрд╕реНрдкрд╖реНрдЯ рд╣реИ, рддреЛ рд╣рдореЗрдВ рдЗрд╕рдХреЗ рд▓рд┐рдП рдЗрд╕реЗ рд╕реЗ рдЫреБрдЯрдХрд╛рд░рд╛ рдкрд╛рдиреЗ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реИ рдФрд░ рдбреНрд░реЙрдкрдирд╛ () рд╡рд┐рдзрд┐ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИред
рд╕реНрдЯреЗрд╢рдирд░реА рдХреЗ рд▓рд┐рдП рдкрд░рд┐рдгрд╛рдореА рд╢реНрд░реГрдВрдЦрд▓рд╛ рджреЗрдЦреЗрдВ:

 test = sm.tsa.adfuller(otg1diff) print 'adf: ', test[0] print 'p-value: ', test[1] print'Critical values: ', test[4] if test[0]> test[4]['5%']: print '  ,   ' else: print '  ,  ' 

adf: -5.95204224907
рдкреА-рд╡реИрд▓реНрдпреВ: 2.13583392404e-07
рдорд╣рддреНрд╡рдкреВрд░реНрдг рдорд╛рди: {'5%': -2.8755379867788462, '1%': -3.4621857592784546, '10% ': -2.574231080806213}
рдПрдХ рднреА рдЬрдбрд╝реЗрдВ рдирд╣реАрдВ рд╣реИрдВ, рдкрдВрдХреНрддрд┐ рд╕реНрдерд┐рд░ рд╣реИ

рдЬреИрд╕рд╛ рдХрд┐ рдЖрдк рдКрдкрд░ рджрд┐рдП рдЧрдП рдХреЛрдб рд╕реЗ рджреЗрдЦ рд╕рдХрддреЗ рд╣реИрдВ, рдкрд╣рд▓реЗ рдЕрдВрддрд░ рдХреА рдкрд░рд┐рдгрд╛рдореА рд╢реНрд░реГрдВрдЦрд▓рд╛ рд╕реНрдерд┐рд░ рдПрдХ рдХреЗ рдкрд╛рд╕ рдкрд╣реБрдВрдЪ рдЧрдИред рдпрд╣ рд╕реБрдирд┐рд╢реНрдЪрд┐рдд рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП, рд╣рдо рдЗрд╕реЗ рдХрдИ рдЕрдВрддрд░рд╛рд▓реЛрдВ рдореЗрдВ рддреЛрдбрд╝реЗрдВрдЧреЗ рдФрд░ рд╕реБрдирд┐рд╢реНрдЪрд┐рдд рдХрд░реЗрдВ рдХрд┐ рдЪрдЯрд╛рдИ рдмрди рдЬрд╛рдПрдЧреАред рд╡рд┐рднрд┐рдиреНрди рдЕрдВрддрд░рд╛рд▓ рдкрд░ рдЕрдкреЗрдХреНрд╖рд╛рдПрдБ:

 m = otg1diff.index[len(otg1diff.index)/2+1] r1 = sm.stats.DescrStatsW(otg1diff[m:]) r2 = sm.stats.DescrStatsW(otg1diff[:m]) print 'p-value: ', sm.stats.CompareMeans(r1,r2).ttest_ind()[1] 

рдкреА-рдореВрд▓реНрдп: 0.693072039563

рдЙрдЪреНрдЪ рдкреА-рдореВрд▓реНрдп рд╣рдореЗрдВ рдпрд╣ рджрд╛рд╡рд╛ рдХрд░рдиреЗ рдХреА рдЕрдиреБрдорддрд┐ рджреЗрддрд╛ рд╣реИ рдХрд┐ рд╕рд╛рдзрдиреЛрдВ рдХреА рд╕рдорд╛рдирддрд╛ рдХреА рд╢реВрдиреНрдп рдкрд░рд┐рдХрд▓реНрдкрдирд╛ рд╕рдЪ рд╣реИ, рдЬреЛ рд╢реНрд░реГрдВрдЦрд▓рд╛ рдХреА рд╕реНрдерд┐рд░рддрд╛ рдХреЛ рдЗрдВрдЧрд┐рдд рдХрд░рддрд╛ рд╣реИред рдпрд╣ рд╕реБрдирд┐рд╢реНрдЪрд┐рдд рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдмрдиреА рд╣реБрдИ рд╣реИ рдХрд┐ рдЗрд╕рдХреЗ рд▓рд┐рдП рдХреЛрдИ рдкреНрд░рд╡реГрддреНрддрд┐ рдирд╣реАрдВ рд╣реИ, рд╣рдо рдЕрдкрдиреА рдирдИ рд╢реНрд░реГрдВрдЦрд▓рд╛ рдХрд╛ рдПрдХ рдЧреНрд░рд╛рдл рдмрдирд╛рддреЗ рд╣реИрдВ:

 otg1diff.plot(figsize=(12,6)) 


рдкреНрд░рд╡реГрддреНрддрд┐ рд╡рд╛рд╕реНрддрд╡ рдореЗрдВ рдЕрдиреБрдкрд╕реНрдерд┐рдд рд╣реИ, рдЗрд╕рд▓рд┐рдП рдкрд╣рд▓реЗ рдорддрднреЗрджреЛрдВ рдХреА рд╢реНрд░реГрдВрдЦрд▓рд╛ рд╕реНрдерд┐рд░ рд╣реИ, рдФрд░ рд╣рдорд╛рд░реА рдкреНрд░рд╛рд░рдВрднрд┐рдХ рд╢реНрд░реГрдВрдЦрд▓рд╛ рдкрд╣рд▓реЗ рдХреНрд░рдо рдХреА рдПрдХ рдПрдХреАрдХреГрдд рд╢реНрд░реГрдВрдЦрд▓рд╛ рд╣реИ ред

рдПрдХ рд╕рдордп рд╢реНрд░реГрдВрдЦрд▓рд╛ рдореЙрдбрд▓ рдХрд╛ рдирд┐рд░реНрдорд╛рдг


рдореЙрдбрд▓рд┐рдВрдЧ рдХреЗ рд▓рд┐рдП, рд╣рдо рдкрд╣рд▓реЗ рдХрдИ рдЕрдВрддрд░реЛрдВ рдХреЗ рд▓рд┐рдП рдирд┐рд░реНрдорд┐рдд ARIMA рдореЙрдбрд▓ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░реЗрдВрдЧреЗред
рдЗрд╕рд▓рд┐рдП, рдПрдХ рдореЙрдбрд▓ рдмрдирд╛рдиреЗ рдХреЗ рд▓рд┐рдП рд╣рдореЗрдВ рдЗрд╕рдХреЗ рдЖрджреЗрд╢ рдХреЛ рдЬрд╛рдирдирд╛ рд╣реЛрдЧрд╛, рдЬрд┐рд╕рдореЗрдВ 2 рдкреИрд░рд╛рдореАрдЯрд░ рд╢рд╛рдорд┐рд▓ рд╣реЛрдВрдЧреЗ:
  1. p , рдШрдЯрдХ AR рдХрд╛ рдХреНрд░рдо рд╣реИ
  2. рдбреА рдПрдХреАрдХреГрдд рд╢реНрд░реГрдВрдЦрд▓рд╛ рдХрд╛ рдХреНрд░рдо рд╣реИ
  3. рдХреНрдпреВ рдШрдЯрдХ рдПрдордП рдХрд╛ рдХреНрд░рдо рд╣реИ


рдкреИрд░рд╛рдореАрдЯрд░ d рд╣реИ рдФрд░ рдпрд╣ 1 рдХреЛ рддреЛрдбрд╝рддрд╛ рд╣реИ, рдпрд╣ p рдФрд░ q рдирд┐рд░реНрдзрд╛рд░рд┐рдд рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рд░рд╣рддрд╛ рд╣реИред рдЙрдиреНрд╣реЗрдВ рдирд┐рд░реНрдзрд╛рд░рд┐рдд рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП, рд╣рдореЗрдВ рдкрд╣рд▓реЗ рдорддрднреЗрджреЛрдВ рдХреЗ рд▓рд┐рдП рдСрдЯреЛрдХреЙрд░реЗрд▓реЗрд╢рди (рдПрд╕реАрдПрдл) рдФрд░ рдЖрдВрд╢рд┐рдХ рд░реВрдк рд╕реЗ рдСрдЯреЛрдХреЙрд░реЗрд▓реЗрд╢рди (рдкреАрдПрд╕реАрдПрдл) рдХрд╛рд░реНрдпреЛрдВ рдХрд╛ рдЕрдзреНрдпрдпрди рдХрд░рдиреЗ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реИред
ACF рд╣рдореЗрдВ q рдирд┐рд░реНрдзрд╛рд░рд┐рдд рдХрд░рдиреЗ рдореЗрдВ рдорджрдж рдХрд░реЗрдЧрд╛, рдХреНрдпреЛрдВрдХрд┐ рдЗрд╕рдХреЗ рдХреЛрд░реЛрдЧреНрд░рд╛рдо рдХреЗ рджреНрд╡рд╛рд░рд╛, рд╣рдо рдСрдЯреЛрдХреЙрд░реНрдкреЛрд░реЗрд╢рди рдЧреБрдгрд╛рдВрдХ рдХреА рд╕рдВрдЦреНрдпрд╛ рдирд┐рд░реНрдзрд╛рд░рд┐рдд рдХрд░ рд╕рдХрддреЗ рд╣реИрдВ рдЬреЛ MA рдореЙрдбрд▓ рдореЗрдВ 0 рд╕реЗ рдмрд╣реБрдд рдЕрд▓рдЧ рд╣реИрдВ
PACF рд╣рдореЗрдВ p рдирд┐рд░реНрдзрд╛рд░рд┐рдд рдХрд░рдиреЗ рдореЗрдВ рдорджрдж рдХрд░реЗрдЧрд╛, рдХреНрдпреЛрдВрдХрд┐ рдЗрд╕рдХреЗ correlogram рджреНрд╡рд╛рд░рд╛ рдЖрдк AR рдореЙрдбрд▓ рдореЗрдВ 0 рд╕реЗ рднрд┐рдиреНрди рдЕрдзрд┐рдХрддрдо рдЧреБрдгрд╛рдВрдХ рд╕рдВрдЦреНрдпрд╛ рдирд┐рд░реНрдзрд╛рд░рд┐рдд рдХрд░ рд╕рдХрддреЗ рд╣реИрдВред
рд╕рдВрдмрдВрдзрд┐рдд correlograms рдХрд╛ рдирд┐рд░реНрдорд╛рдг рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП, рдЖрдБрдХрдбрд╝реЗ рдлрд╝рдВрдХреНрд╢рди рдкреИрдХреЗрдЬ рдореЗрдВ рдирд┐рдореНрдирд▓рд┐рдЦрд┐рдд рдХрд╛рд░реНрдп рдЙрдкрд▓рдмреНрдз рд╣реИрдВ: plot_acf () рдФрд░ plot_pacf () ред рд╡реЗ рдПрд╕реАрдПрдл рдФрд░ рдкреАрдПрд╕реАрдПрдл рдЧреНрд░рд╛рдл рдкреНрд░рджрд░реНрд╢рд┐рдд рдХрд░рддреЗ рд╣реИрдВ , рдЬрд┐рд╕рдореЗрдВ рд▓реИрдЧ рдирдВрдмрд░ рдПрдХреНрд╕ рдЕрдХреНрд╖ рдХреЗ рд╕рд╛рде рдкреНрд▓реЙрдЯ рдХрд┐рдП рдЬрд╛рддреЗ рд╣реИрдВ, рдФрд░ рд╡рд╛рдИ рдЕрдХреНрд╖ рдХреЗ рд╕рд╛рде рд╕рдВрдмрдВрдзрд┐рдд рдХрд╛рд░реНрдпреЛрдВ рдХреЗ рдореВрд▓реНрдпред рдпрд╣ рдзреНрдпрд╛рди рджрд┐рдпрд╛ рдЬрд╛рдирд╛ рдЪрд╛рд╣рд┐рдП рдХрд┐ рдХрд╛рд░реНрдпреЛрдВ рдореЗрдВ рдЕрдВрддрд░рд╛рд▓ рдХреА рд╕рдВрдЦреНрдпрд╛ рдорд╣рддреНрд╡рдкреВрд░реНрдг рдЧреБрдгрд╛рдВрдХ рдХреА рд╕рдВрдЦреНрдпрд╛ рдирд┐рд░реНрдзрд╛рд░рд┐рдд рдХрд░рддреА рд╣реИред рддреЛ, рд╣рдорд╛рд░реЗ рдХрд╛рд░реНрдп рдЗрд╕ рддрд░рд╣ рджрд┐рдЦрддреЗ рд╣реИрдВ:

 ig = plt.figure(figsize=(12,8)) ax1 = fig.add_subplot(211) fig = sm.graphics.tsa.plot_acf(otg1diff.values.squeeze(), lags=25, ax=ax1) ax2 = fig.add_subplot(212) fig = sm.graphics.tsa.plot_pacf(otg1diff, lags=25, ax=ax2) 


PACF correlogram рдХрд╛ рдЕрдзреНрдпрдпрди рдХрд░рдиреЗ рдХреЗ рдмрд╛рдж, рд╣рдо рдЙрд╕ p = 1 рдХрд╛ рдирд┐рд╖реНрдХрд░реНрд╖ рдирд┐рдХрд╛рд▓ рд╕рдХрддреЗ рд╣реИрдВ, рдХреНрдпреЛрдВрдХрд┐ рдЗрд╕ рдкрд░ рдХреЗрд╡рд▓ 1 рдЕрдВрддрд░рд╛рд▓ рд╢реВрдиреНрдп рд╕реЗ рдмрд╣реБрдд рдЕрд▓рдЧ рд╣реИред ACF correlogram рд╕реЗ, рд╣рдо рдЙрд╕ q = 1 рдХреЛ рджреЗрдЦ рд╕рдХрддреЗ рд╣реИрдВ, рдХреНрдпреЛрдВрдХрд┐ рд▓реИрдЧ 1 рдХреЗ рдмрд╛рдж, рдлрд╝рдВрдХреНрд╢рди рдХрд╛ рдореВрд▓реНрдп рддреЗрдЬреА рд╕реЗ рдЧрд┐рд░рддрд╛ рд╣реИред
рдЗрд╕рд▓рд┐рдП, рдЬрдм рд╕рднреА рдорд╛рдкрджрдВрдбреЛрдВ рдХреЛ рдЬрд╛рдирд╛ рдЬрд╛рддрд╛ рд╣реИ, рддреЛ рдПрдХ рдореЙрдбрд▓ рдмрдирд╛рдирд╛ рд╕рдВрднрд╡ рд╣реИ, рд▓реЗрдХрд┐рди рдЗрд╕рдХреЗ рдирд┐рд░реНрдорд╛рдг рдХреЗ рд▓рд┐рдП рд╣рдо рд╕рднреА рдбреЗрдЯрд╛ рдирд╣реАрдВ рд▓реЗрдВрдЧреЗ, рд▓реЗрдХрд┐рди рдХреЗрд╡рд▓ рдПрдХ рд╣рд┐рд╕реНрд╕рд╛ рд╣реИред рд╣рдо рдЙрд╕ рднрд╛рдЧ рд╕реЗ рдбреЗрдЯрд╛ рдЫреЛрдбрд╝ рджреЗрдВрдЧреЗ рдЬреЛ рд╣рдорд╛рд░реЗ рдореЙрдбрд▓ рдХреЗ рдкреВрд░реНрд╡рд╛рдиреБрдорд╛рди рдХреА рд╕рдЯреАрдХрддрд╛ рдХреЛ рд╕рддреНрдпрд╛рдкрд┐рдд рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдореЙрдбрд▓ рдореЗрдВ рдирд╣реАрдВ рдЖрдпрд╛ рдерд╛:

 src_data_model = otg[:'2013-05-26'] model = sm.tsa.ARIMA(src_data_model, order=(1,1,1), freq='W').fit(full_output=False, disp=0) 

рдореЙрдбрд▓ рдореЗрдВ рдПрдХ рд╕реНрдерд┐рд░ рдХреА рдЙрдкрд╕реНрдерд┐рддрд┐ рдХреЗ рд▓рд┐рдП рдкреНрд░рд╡реГрддреНрддрд┐ рдкреИрд░рд╛рдореАрдЯрд░ рдЬрд┐рдореНрдореЗрджрд╛рд░ рд╣реИред рд╣рдо рдкрд░рд┐рдгрд╛рдореА рдореЙрдбрд▓ рдкрд░ рдЬрд╛рдирдХрд╛рд░реА рдкреНрд░рд╛рдкреНрдд рдХрд░рддреЗ рд╣реИрдВ:

 print model.summary() 



рдЬреИрд╕рд╛ рдХрд┐ рд╣рдорд╛рд░реЗ рдореЙрдбрд▓ рдореЗрдВ рдЗрд╕ рдЬрд╛рдирдХрд╛рд░реА рд╕реЗ рджреЗрдЦрд╛ рдЬрд╛ рд╕рдХрддрд╛ рд╣реИ, рд╕рднреА рдЧреБрдгрд╛рдВрдХ рдорд╣рддреНрд╡рдкреВрд░реНрдг рд╣реИрдВ рдФрд░ рд╣рдо рдореЙрдбрд▓ рдХреЗ рдореВрд▓реНрдпрд╛рдВрдХрди рдХреЗ рд▓рд┐рдП рдЖрдЧреЗ рдмрдврд╝ рд╕рдХрддреЗ рд╣реИрдВред

рд╡рд┐рд╢реНрд▓реЗрд╖рдг рдФрд░ рдореЙрдбрд▓ рдХрд╛ рдореВрд▓реНрдпрд╛рдВрдХрди


рд╣рдо "рд╕рдлреЗрдж рд╢реЛрд░" рдХреЗ рдЕрдиреБрдкрд╛рд▓рди рдХреЗ рд▓рд┐рдП рдЗрд╕ рдореЙрдбрд▓ рдХреЗ рдЕрд╡рд╢реЗрд╖реЛрдВ рдХреА рдЬрд╛рдВрдЪ рдХрд░реЗрдВрдЧреЗ, рдФрд░ рдЕрд╡рд╢реЗрд╖реЛрдВ рдХреЗ рдХреЛрд░рд▓реЛрдЧреНрд░рд╛рдо рдХрд╛ рднреА рд╡рд┐рд╢реНрд▓реЗрд╖рдг рдХрд░реЗрдВрдЧреЗ, рдХреНрдпреЛрдВрдХрд┐ рдЗрд╕рд╕реЗ рд╣рдореЗрдВ рдкреНрд░рддрд┐рдЧрдорди рддрддреНрд╡реЛрдВ рдХреЛ рдирд┐рд░реНрдзрд╛рд░рд┐рдд рдХрд░рдиреЗ рдореЗрдВ рдорджрдж рдорд┐рд▓ рд╕рдХрддреА рд╣реИ рдЬреЛ рд╢рд╛рдорд┐рд▓ рдФрд░ рднрд╡рд┐рд╖реНрдпрд╡рд╛рдгреА рдХреЗ рд▓рд┐рдП рдорд╣рддреНрд╡рдкреВрд░реНрдг рд╣реИрдВред
рддреЛ рдкрд╣рд▓реА рдЪреАрдЬ рдЬреЛ рд╣рдо рдХрд░реЗрдВрдЧреЗ, рд╡рд╣ рд╣реИ - рд▓рд┐рдВрдЧ - рдмреЙрдХреНрд╕ Q- рдкрд░реАрдХреНрд╖рдг рдХреА рдкрд░рд┐рдХрд▓реНрдкрдирд╛ рдХрд╛ рдкрд░реАрдХреНрд╖рдг рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдХрд┐ рдЕрд╡рд╢реЗрд╖ рдпрд╛рджреГрдЪреНрдЫрд┐рдХ рд╣реИрдВ, рдЕрд░реНрдерд╛рддреН, рд╡реЗ "рд╕рдлреЗрдж рд╢реЛрд░" рд╣реИрдВред рдпрд╣ рдкрд░реАрдХреНрд╖рдг ARIMA рдореЙрдбрд▓ рдХреЗ рдЕрд╡рд╢реЗрд╖реЛрдВ рдкрд░ рдХрд┐рдпрд╛ рдЧрдпрд╛ рд╣реИред рдЗрд╕ рдкреНрд░рдХрд╛рд░, рд╣рдореЗрдВ рдкрд╣рд▓реЗ рдореЙрдбрд▓ рдХреЗ рдЕрд╡рд╢реЗрд╖ рдкреНрд░рд╛рдкреНрдд рдХрд░рдиреЗ рдФрд░ рдЙрдирдХреЗ рд▓рд┐рдП рдПрд╕реАрдПрдл рдмрдирд╛рдиреЗ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реИ, рдФрд░ рдлрд┐рд░ рдкрд░рд┐рдгрд╛рдореА рдЧреБрдгрд╛рдВрдХ рдХреЗ рд▓рд┐рдП рдкрд░реАрдХреНрд╖рдг рдХрд░реЗрдВред рдЖрдБрдХрдбрд╝реЗрдорд╛рдбрд▓реНрд╕ рдХреЗ рд╕рд╛рде , рдпрд╣ рдЗрд╕ рддрд░рд╣ рдХрд┐рдпрд╛ рдЬрд╛ рд╕рдХрддрд╛ рд╣реИ:

 q_test = sm.tsa.stattools.acf(model.resid, qstat=True) # resid,   , qstat=True,       - print DataFrame({'Q-stat':q_test[1], 'p-value':q_test[2]}) 

рдкрд░рд┐рдгрд╛рдо
рдХреНрдпреВ рд╕реНрдЯреЗрдЯрдкреА-рдореВрд▓реНрдп
00.5314260.466008
13.0732170.215109
23.6442290.302532
33.9063260.418832
44.7014330.453393
55.4337450.489500
65.4442540.605916
75.4453090.709091
85.9007620.749808
96.0049280.814849
106.1559660.862758
116.2999580.900213
1212.7315420.468755
1314.7078940.398410
1420.7206070.145996
1523.1974330.108558
1623.9498010.120805
1724.1192360.151160
1825.6161840.141243
1926.0351650.164654
2028.9698800.114727
2128.9736600.145614
2229.0177160.179723
2332.1140060.124191
2432.2848050.149936
2533.1233950.158548
2633.1290590.192844
2733.7604880.208870
2838.4210530.113255
2938.7242260.132028
3038.9734260.153863
3138.9781720.184613
3239.3189540.207819
3339.3824720.241623
3439.4237630.278615
3540.0836890.293860
3643.8495150.203755
3745.7044760.182576
3847.1329110.174117
3947.3653050.197305


рдЗрди рдЖрдВрдХрдбрд╝реЛрдВ рдФрд░ рдкреА-рдорд╛рдиреЛрдВ рдХреЗ рдореВрд▓реНрдп рд╕реЗ рд╕рдВрдХреЗрдд рдорд┐рд▓рддрд╛ рд╣реИ рдХрд┐ рдЕрд╡рд╢реЗрд╖реЛрдВ рдХреА рдпрд╛рджреГрдЪреНрдЫрд┐рдХрддрд╛ рдХреА рдкрд░рд┐рдХрд▓реНрдкрдирд╛ рдХреЛ рдЕрд╕реНрд╡реАрдХрд╛рд░ рдирд╣реАрдВ рдХрд┐рдпрд╛ рдЧрдпрд╛ рд╣реИ, рдФрд░ рд╕рдмрд╕реЗ рдЕрдзрд┐рдХ рд╕рдВрднрд╛рд╡рдирд╛ рд╣реИ рдХрд┐ рдпрд╣ рдкреНрд░рдХреНрд░рд┐рдпрд╛ "рд╕рдлреЗрдж рд╢реЛрд░" рдХрд╛ рдкреНрд░рддрд┐рдирд┐рдзрд┐рддреНрд╡ рдХрд░рддреА рд╣реИред
рдЕрдм рдЪрд▓реЛ рдирд┐рд░реНрдзрд╛рд░рдг рдХреЗ рдЧреБрдгрд╛рдВрдХ рдХреА рдЧрдгрдирд╛ рдХрд░рддреЗ рд╣реИрдВ рдпрд╣ рд╕рдордЭрдиреЗ рдХреЗ рд▓рд┐рдП рдХрд┐ рдпрд╣ рдореЙрдбрд▓ рдХрд┐рддрдиреЗ рдкреНрд░рддрд┐рд╢рдд рдЯрд┐рдкреНрдкрдгрд┐рдпреЛрдВ рдХрд╛ рд╡рд░реНрдгрди рдХрд░рддрд╛ рд╣реИ:

 pred = model.predict('2013-05-26','2014-12-31', typ='levels') trn = otg['2013-05-26':] r2 = r2_score(trn, pred[1:32]) print 'R^2: %1.2f' % r2 

рдЖрд░ ^ 2: -0.03

рд╣рдорд╛рд░реЗ рдореЙрдбрд▓ рдХрд╛ рдорд╛рдирдХ рд╡рд┐рдЪрд▓рди [2] :

 metrics.rmse(trn,pred[1:32]) 

реореж,репрезреп.режрелренрейремренремрекреирелрезреи

рдкреВрд░реНрд╡рд╛рдиреБрдорд╛рди рдХреА рдФрд╕рдд рдкреВрд░реНрдг рддреНрд░реБрдЯрд┐ [2] :

 metrics.mae(trn,pred[1:32]) 

ремрей,режрепреи.ренремрейреиренренремрелрезреорепрел

рдпрд╣ рдЪрд╛рд░реНрдЯ рдкрд░ рд╣рдорд╛рд░реЗ рдкреВрд░реНрд╡рд╛рдиреБрдорд╛рди рдХреЛ рдЖрдХрд░реНрд╖рд┐рдд рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдмрдирд╛ рд╣реБрдЖ рд╣реИ:

 otg.plot(figsize=(12,6)) pred.plot(style='r--') 



рдирд┐рд╖реНрдХрд░реНрд╖


рдЬреИрд╕рд╛ рдХрд┐ рдЖрдк рдЧреНрд░рд╛рдл рд╕реЗ рджреЗрдЦ рд╕рдХрддреЗ рд╣реИрдВ, рд╣рдорд╛рд░рд╛ рдореЙрдбрд▓ рдмрд╣реБрдд рдЕрдЪреНрдЫрд╛ рдкреВрд░реНрд╡рд╛рдиреБрдорд╛рди рдирд╣реАрдВ рдмрдирд╛ рд░рд╣рд╛ рд╣реИред рдпрд╣ рдЖрдВрд╢рд┐рдХ рд░реВрдк рд╕реЗ рд╕реНрд░реЛрдд рдбреЗрдЯрд╛ рдореЗрдВ рдЖрдЙрдЯрд▓реЗрд░ рдХреЗ рдХрд╛рд░рдг рд╣реИ, рдЬрд┐рд╕реЗ рд╣рдордиреЗ рдкреВрд░реА рддрд░рд╣ рд╕реЗ рд╣рдЯрд╛ рдирд╣реАрдВ рджрд┐рдпрд╛ рд╣реИ, рд╕рд╛рде рд╣реА рд╕рд╛рде рдЖрдБрдХрдбрд╝реЗрдорд╛рдбреЗрд▓ рдкреИрдХреЗрдЬ рдХреЗ рдПрдЖрд░рдЖрдИрдПрдордП рдореЙрдбреНрдпреВрд▓ рдХреЗ рд▓рд┐рдП, рдХреНрдпреЛрдВрдХрд┐ рдпрд╣ рдХрд╛рдлреА рдирдпрд╛ рд╣реИред рд▓реЗрдЦ рдпрд╣ рджрд┐рдЦрд╛рдиреЗ рдХреЗ рдЙрджреНрджреЗрд╢реНрдп рд╕реЗ рд╣реИ рдХрд┐ рд╡рд╛рд╕реНрддрд╡ рдореЗрдВ рдЕрдЬрдЧрд░ рдореЗрдВ рд╕рдордп рд╢реНрд░реГрдВрдЦрд▓рд╛ рдХрд╛ рд╡рд┐рд╢реНрд▓реЗрд╖рдг рдХреИрд╕реЗ рдХрд┐рдпрд╛ рдЬрд╛ рд╕рдХрддрд╛ рд╣реИред рдореИрдВ рдпрд╣ рднреА рдиреЛрдЯ рдХрд░рдирд╛ рдЪрд╛рд╣реВрдВрдЧрд╛ рдХрд┐ рдЖрдЬ рдЬрд╛рдВрдЪ рдХрд┐рдП рдЧрдП рдкреИрдХреЗрдЬ рдореЗрдВ рдкреНрд░рддрд┐рдЧрдорди рд╡рд┐рд╢реНрд▓реЗрд╖рдг рдХреЗ рд╡рд┐рднрд┐рдиреНрди рддрд░реАрдХреЛрдВ рдХреЛ рдкреВрд░реА рддрд░рд╣ рд╕реЗ рд▓рд╛рдЧреВ рдХрд┐рдпрд╛ рдЧрдпрд╛ рд╣реИ (рдореИрдВ рдЖрдЧреЗ рдХреЗ рд╡рд┐рд╡рд░рдг рдореЗрдВ рджрд┐рдЦрд╛рдиреЗ рдХреА рдХреЛрд╢рд┐рд╢ рдХрд░реВрдВрдЧрд╛)ред
рд╕рд╛рдорд╛рдиреНрдп рддреМрд░ рдкрд░, рдЫреЛрдЯреЗ рдЕрдзреНрдпрдпрдиреЛрдВ рдХреЗ рд▓рд┐рдП, рд╕рд╛рдВрдЦреНрдпрд┐рдХреАрдореЙрдбрд▓ рдкреИрдХреЗрдЬ рдкреВрд░реА рддрд░рд╣ рд╕реЗ рдЙрдкрдпреБрдХреНрдд рд╣реИ, рд▓реЗрдХрд┐рди рдЧрдВрднреАрд░ рд╡реИрдЬреНрдЮрд╛рдирд┐рдХ рдХрд╛рд░реНрдп рдХреЗ рд▓рд┐рдП рдпрд╣ рдЕрднреА рднреА рдХрдЪреНрдЪрд╛ рд╣реИ рдФрд░ рдХреБрдЫ рдкрд░реАрдХреНрд╖рдг рдФрд░ рдЖрдВрдХрдбрд╝реЗ рдЧрд╛рдпрдм рд╣реИрдВред

рд╕рдВрджрд░реНрдн


  1. рджреНрд╡рд┐рддреАрдп Eliseevред рдЕрд░реНрдердорд┐рддрд┐
  2. рд╕рдордп рд╢реНрд░реГрдВрдЦрд▓рд╛ рдХреЗ рдореЙрдбрд▓ рдХреА рддреБрд▓рдирд╛

Source: https://habr.com/ru/post/In207160/


All Articles