рдкрд╛рдпрдерди + рдЖрд░ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░ рдПрдХ SARIMA рдореЙрдбрд▓ рдХрд╛ рдирд┐рд░реНрдорд╛рдг

рдкрд░рд┐рдЪрдп


рд╢реБрдн рджреЛрдкрд╣рд░, рдкреНрд░рд┐рдп рдкрд╛рдардХреЛрдВред
рдкрд╛рдпрдерди рдореЗрдВ рдЯрд╛рдЗрдо рд╕реАрд░реАрдЬрд╝ рдХреЗ рд╡рд┐рд╢реНрд▓реЗрд╖рдг рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рдкрд┐рдЫрд▓реА рдкреЛрд╕реНрдЯ рд▓рд┐рдЦрдиреЗ рдХреЗ рдмрд╛рдж, рдореИрдВрдиреЗ рдЙрди рдЯрд┐рдкреНрдкрдгрд┐рдпреЛрдВ рдХреЛ рдареАрдХ рдХрд░рдиреЗ рдХрд╛ рдлреИрд╕рд▓рд╛ рдХрд┐рдпрд╛, рдЬреЛ рдЯрд┐рдкреНрдкрдгрд┐рдпреЛрдВ рдореЗрдВ рдЗрдВрдЧрд┐рдд рдХреА рдЧрдИ рдереАрдВ, рд▓реЗрдХрд┐рди рдЬрдм рдЙрдиреНрд╣реЗрдВ рдареАрдХ рдХрд┐рдпрд╛ рдЧрдпрд╛, рддреЛ рдореИрдВ рдХрдИ рд╕рдорд╕реНрдпрд╛рдУрдВ рдореЗрдВ рднрд╛рдЧ рдЧрдпрд╛, рдЙрджрд╛рд╣рд░рдг рдХреЗ рд▓рд┐рдП, рдЬрдм рдПрдХ рдореМрд╕рдореА ARIMA рдореЙрдбрд▓ рдХрд╛ рдирд┐рд░реНрдорд╛рдг рдХрд┐рдпрд╛ рдЧрдпрд╛, рдХреНрдпреЛрдВрдХрд┐ рдореБрдЭреЗ рд╕реНрдЯреИрдЯрдореЙрдбрд▓ рдкреИрдХреЗрдЬ рдореЗрдВ рдПрдХ рд╕рдорд╛рди рдлрд╝рдВрдХреНрд╢рди рдирд╣реАрдВ рдорд┐рд▓рд╛ред рдЕрдВрдд рдореЗрдВ, рдореИрдВрдиреЗ рдЗрд╕рдХреЗ рд▓рд┐рдП R рд╕реЗ рдлрд╝рдВрдХреНрд╢рди рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдиреЗ рдХрд╛ рдирд┐рд░реНрдгрдп рд▓рд┐рдпрд╛, рдФрд░ рдЦреЛрдЬреЛрдВ рдиреЗ рдореБрдЭреЗ rpy2 рд▓рд╛рдЗрдмреНрд░реЗрд░реА рдореЗрдВ рд▓реЗ рдЧрдпрд╛, рдЬреЛ рдЖрдкрдХреЛ рдЙрд▓реНрд▓рд┐рдЦрд┐рдд рднрд╛рд╖рд╛ рдХреЗ рд▓рд╛рдЗрдмреНрд░реЗрд░реА рд╕реЗ рдлрд╝рдВрдХреНрд╢рдВрд╕ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдиреЗ рдХреА рдЕрдиреБрдорддрд┐ рджреЗрддрд╛ рд╣реИред
рдХрдИ рдкреВрдЫ рд╕рдХрддреЗ рд╣реИрдВ, "рдпрд╣ рдЖрд╡рд╢реНрдпрдХ рдХреНрдпреЛрдВ рд╣реИ?", рдХреНрдпреЛрдВрдХрд┐ рдЖрд░ рдХреЛ рд▓реЗрдирд╛ рдФрд░ рдЙрд╕рдореЗрдВ рд╕рднреА рдХрд╛рдо рдХрд░рдирд╛ рдЖрд╕рд╛рди рд╣реИред рдореИрдВ рдЗрд╕ рдХрдерди рд╕реЗ рдкреВрд░реА рддрд░рд╣ рд╕рд╣рдордд рд╣реВрдВ, рд▓реЗрдХрд┐рди рдпрд╣ рдореБрдЭреЗ рдкреНрд░рддреАрдд рд╣реЛрддрд╛ рд╣реИ рдХрд┐ рдЕрдЧрд░ рдбреЗрдЯрд╛ рдХреЛ рдкреНрд░рд╛рд░рдВрднрд┐рдХ рдкреНрд░рд╕рдВрд╕реНрдХрд░рдг рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реЛрддреА рд╣реИ, рддреЛ рдЗрд╕реЗ рдкрд╛рдпрдерди рдореЗрдВ рдЙрддреНрдкрд╛рджрди рдХрд░рдирд╛ рдЖрд╕рд╛рди рд╣реЛрддрд╛ рд╣реИ, рдФрд░ рд╡рд┐рд╢реНрд▓реЗрд╖рдг рдХреЗ рд▓рд┐рдП рдЖрд╡рд╢реНрдпрдХ рд╣реЛрдиреЗ рдкрд░ рдЖрд░ рдХреНрд╖рдорддрд╛рдУрдВ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд┐рдпрд╛ рдЬрд╛ рд╕рдХрддрд╛ рд╣реИред
рдЗрд╕рдХреЗ рдЕрд▓рд╛рд╡рд╛, рдпрд╣ рджрд┐рдЦрд╛рдПрдЧрд╛ рдХрд┐ рдлрд╝рдВрдХреНрд╢рди рдЖрд░ рдХреЗ рдЖрдЙрдЯрдкреБрдЯ рдХреЗ рдкрд░рд┐рдгрд╛рдореЛрдВ рдХреЛ рдЖрдИрдкреАрдереЙрди рдиреЛрдЯрдмреБрдХ рдореЗрдВ рдХреИрд╕реЗ рдПрдХреАрдХреГрдд рдХрд┐рдпрд╛ рдЬрд╛рдП ред

Rpy2 рдХреЛ рд╕реНрдерд╛рдкрд┐рдд рдФрд░ рдХреЙрдиреНрдлрд╝рд┐рдЧрд░ рдХрд░реЗрдВ


рдЖрд░рдВрдн рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП, рдЖрдкрдХреЛ rpy2 рд╕реНрдерд╛рдкрд┐рдд рдХрд░рдирд╛ рд╣реЛрдЧрд╛ред рдЖрдк рдХрдорд╛рдВрдб рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдХреЗ рдРрд╕рд╛ рдХрд░ рд╕рдХрддреЗ рд╣реИрдВ:

pip install rpy2 

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

рдореИрдХ рдУрдПрд╕ рдПрдХреНрд╕ рдкрд░ рдЗрдВрд╕реНрдЯреЙрд▓реЗрд╢рди рднреА рдХрд┐рдпрд╛ рдЧрдпрд╛ рдерд╛, рдЬрд╣рд╛рдВ рдХреЛрдИ рд╣реЗрд░рдлреЗрд░ рдбреЗрдЯрд╛ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рдирд╣реАрдВ рдереАред

рд╢реБрд░реБрдЖрдд рд╣реЛ рд░рд╣реА рд╣реИ


рдЗрд╕рд▓рд┐рдП, рдпрджрд┐ рдЖрдк рдЖрдИрдкреАрдереЙрди рдиреЛрдЯрдмреБрдХ рдореЗрдВ рдХрд╛рдо рдХрд░ рд░рд╣реЗ рд╣реИрдВ, рддреЛ рдЖрдкрдХреЛ рдПрдХ рдирд┐рд░реНрджреЗрд╢ рдЬреЛрдбрд╝рдиреЗ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реИ:

 %load_ext rmagic 

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

 from pandas import read_csv, DataFrame, Series import statsmodels.api as sm import rpy2.robjects as R from rpy2.robjects.packages import importr import pandas.rpy.common as com from pandas import date_range 

рдЕрдм, рдкрд┐рдЫрд▓реЗ рд▓реЗрдЦ рдХреА рддрд░рд╣, рдбреЗрдЯрд╛ рд▓реЛрдб рдХрд░реЗрдВ рдФрд░ рд╕рд╛рдкреНрддрд╛рд╣рд┐рдХ рдЕрдВрддрд░рд╛рд▓ рдкрд░ рдЖрдЧреЗ рдмрдврд╝реЗрдВ:

 dataset = read_csv('DataSets/tovar_moving.csv',';', index_col=['date'], parse_dates=['date'], dayfirst=True) otg = dataset.qty w = otg.resample('w', how='sum') w.plot(figsize=(12,6)) 


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

рдкреНрд░рд╛рд░рдВрднрд┐рдХ рдбреЗрдЯрд╛ рд╡рд┐рд╢реНрд▓реЗрд╖рдг


рдЗрд╕рд▓рд┐рдП, рд╢реБрд░реБрдЖрдд рдХреЗ рд▓рд┐рдП, рд╣рдо рдореВрд▓реНрдпреЛрдВ рдХреЛ рд╕рдВрд░реЗрдЦрд┐рдд рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдореВрд▓ рд╢реНрд░реГрдВрдЦрд▓рд╛ рдХрд╛ рдкреНрд░рд╕реНрддрд╛рд╡ рдХрд░реЗрдВрдЧреЗ:

 w_log = log(w) w_log.plot(figsize=(12,6)) 


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

 stats = importr('stats') tseries = importr('tseries') 

рдЖрдк рджреЗрдЦ рд╕рдХрддреЗ рд╣реИрдВ рдХрд┐ рдЯреНрд░реЗрд╕рд┐рдпреЛрдВ рдХреЗ рдЕрд▓рд╛рд╡рд╛, рд╣рдордиреЗ рд╕рд╛рдВрдЦреНрдпрд┐рдХреА рдкреБрд╕реНрддрдХрд╛рд▓рдп рднреА рдбрд╛рдЙрдирд▓реЛрдб рдХрд┐рдпрд╛ рд╣реИред рдЯрд╛рдЗрдк рд░реВрдкрд╛рдВрддрд░рдг рдХреЗ рд▓рд┐рдП рд╣рдореЗрдВ рдЗрд╕рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реИред
рдЕрдм рдЖрдкрдХреЛ рдкрд╛рдпрдерди рдкреНрд░рдХрд╛рд░ рд╕реЗ рдбреЗрдЯрд╛ рдХреЛ рд╕рдордЭрдиреЗ рдпреЛрдЧреНрдп R рдкреНрд░рдХрд╛рд░ рдореЗрдВ рдХрдирд╡рд░реНрдЯ рдХрд░рдиреЗ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реИред рдЖрдк Data_rame рдХреЛ рдЦрд┐рд▓рд╛рдП рдЧрдП рдЗрдирдкреБрдЯ рдХреЗ рд▓рд┐рдП Convert_to_r_dataframe () рдлрд╝рдВрдХреНрд╢рди рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдХреЗ рдРрд╕рд╛ рдХрд░ рд╕рдХрддреЗ рд╣реИрдВ, рдФрд░ рдЖрдЙрдЯрдкреБрдЯ R рдХреЗ рд▓рд┐рдП рдПрдХ рд╡реЗрдХреНрдЯрд░ рд╣реИред

 r_df = com.convert_to_r_dataframe(DataFrame(w_log)) 

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

 y = stats.ts(r_df) 

рдкреНрд░рд╛рд░рдВрднрд┐рдХ рдбреЗрдЯрд╛ рддреИрдпрд╛рд░реА рдкреВрд░реА рд╣реЛ рдЧрдИ рд╣реИ рдФрд░ рд╣рдо рдЙрд╕ рдлрд╝рдВрдХреНрд╢рди рдХреЛ рдХреЙрд▓ рдХрд░ рд╕рдХрддреЗ рд╣реИрдВ рдЬрд┐рд╕рдХреА рд╣рдореЗрдВ рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реИ:

 ad = tseries.adf_test(y, alternative="stationary", k=52) 

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

 a = ad.names[:5] {ad.names[i]:ad[i][0] for i in xrange(len(a))} 

{'рд╡реИрдХрд▓реНрдкрд┐рдХ': 'рд╕реНрдерд┐рд░',
'рд╡рд┐рдзрд┐': 'рд╕рдВрд╡рд░реНрдзрд┐рдд рдбрд┐рдХреА-рдлреБрд▓рд░ рдЯреЗрд╕реНрдЯ',
'p.value': 0.23867869477446427,
'рдкреИрд░рд╛рдореАрдЯрд░': 52.0,
'рдЖрдБрдХрдбрд╝рд╛': -2.8030060277420006}

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

 diff1lev = w.diff(periods=1).dropna() print 'p.value: %f' % sm.tsa.adfuller(diff1lev, maxlag=52)[1] 

p.value: 0.000000

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


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

 diff1lev_season = diff1lev.diff(52).dropna() 

рдЖрдЗрдП R рд╕реЗ ADF рдкрд░реАрдХреНрд╖рдг рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рддреЗ рд╣реБрдП рдЗрд╕реЗ рд╕реНрдЯреЗрд╢рдирд░реА рдХреЗ рд▓рд┐рдП рдЬрд╛рдВрдЪреЗрдВ:

 r_df = com.convert_to_r_dataframe(DataFrame(diff1lev_season)) y = stats.ts(r_df) ad = tseries.adf_test(y, alternative="stationary", k=52) a = ad.names[:5] {ad.names[i]:ad[i][0] for i in xrange(len(a))} 

{'рд╡реИрдХрд▓реНрдкрд┐рдХ': 'рд╕реНрдерд┐рд░',
'рд╡рд┐рдзрд┐': 'рд╕рдВрд╡рд░реНрдзрд┐рдд рдбрд┐рдХреА-рдлреБрд▓рд░ рдЯреЗрд╕реНрдЯ',
'p.value': 0.551977997289418,
'рдкреИрд░рд╛рдореАрдЯрд░': 52.0,
'рдЖрдБрдХрдбрд╝рд╛': -2.0581183466564776}

рддреЛ, рд╢реНрд░реГрдВрдЦрд▓рд╛ рд╕реНрдерд┐рд░ рдирд╣реАрдВ рд╣реИ, рдЗрд╕рдХрд╛ рдкрд╣рд▓рд╛ рдЕрдВрддрд░ рд▓реЗрдВ:

 diff1lev_season1lev = diff1lev_season.diff().dropna() print 'p.value: %f' % sm.tsa.adfuller(diff1lev_season1lev, maxlag=52)[1] 

p.value: 0.000395

рдкрд░рд┐рдгрд╛рдорд╕реНрд╡рд░реВрдк рдкрдВрдХреНрддрд┐ рд╕реНрдерд┐рд░ рд╣реИред рдЕрдм рдЖрдк рдореЙрдбрд▓ рдХреЗ рдирд┐рд░реНрдорд╛рдг рдХреЗ рд▓рд┐рдП рдЖрдЧреЗ рдмрдврд╝ рд╕рдХрддреЗ рд╣реИрдВ

рдПрдХ рдореЙрдбрд▓ рдХрд╛ рдирд┐рд░реНрдорд╛рдгред


рддреЛ, рдкреНрд░рд╛рд░рдВрднрд┐рдХ рд╡рд┐рд╢реНрд▓реЗрд╖рдг рдкреВрд░рд╛ рд╣реЛ рдЧрдпрд╛ рд╣реИ, рдФрд░ рд╣рдо рдореМрд╕рдореА рдореЙрдбрд▓ ARIMA (SARIMA) рдХреЗ рдирд┐рд░реНрдорд╛рдг рдХреЗ рд▓рд┐рдП рдЖрдЧреЗ рдмрдврд╝ рд╕рдХрддреЗ рд╣реИрдВред
рдЗрд╕ рдореЙрдбрд▓ рдХрд╛ рд╕рд╛рдорд╛рдиреНрдп рджреГрд╢реНрдп
рдЗрд╕ рдореЙрдбрд▓ рдореЗрдВ, рдкреИрд░рд╛рдореАрдЯрд░ рдирд┐рдореНрдирд▓рд┐рдЦрд┐рдд рджрд░реНрд╢рд╛рддреЗ рд╣реИрдВ:


рдкреА , рдбреА , рдХреНрдпреВ рдХрд╛ рдирд┐рд░реНрдзрд╛рд░рдг рдХреИрд╕реЗ рдХрд░реЗрдВ, рдореИрдВрдиреЗ рдкрд┐рдЫрд▓реА рдмрд╛рд░ рджрд┐рдЦрд╛рдпрд╛ рдерд╛ред рдЕрдм рдореИрдВ рдкреА , рдбреА , рдХреНрдпреВ рдХреЗ рдореМрд╕рдореА рдШрдЯрдХреЛрдВ рдХреЗ рдХреНрд░рдо рдХреЛ рдирд┐рд░реНрдзрд╛рд░рд┐рдд рдХрд░рдиреЗ рдХрд╛ рд╡рд░реНрдгрди рдХрд░реВрдВрдЧрд╛ ред
рд╣рдо рдкреИрд░рд╛рдореАрдЯрд░ рдбреА рдХреЛ рдкрд░рд┐рднрд╛рд╖рд┐рдд рдХрд░рдХреЗ рд╢реБрд░реВ рдХрд░рддреЗ рд╣реИрдВ ред рдпрд╣ рдореМрд╕рдореА рдЕрдВрддрд░ рдХреЗ рдПрдХреАрдХрд░рдг рдХреЗ рдХреНрд░рдо рдХреЛ рдирд┐рд░реНрдзрд╛рд░рд┐рдд рдХрд░реЗрдЧрд╛, рдЕрд░реНрдерд╛рддред рд╣рдорд╛рд░реЗ рдорд╛рдорд▓реЗ рдореЗрдВ, рдпрд╣ 1 рдХреЗ рдмрд░рд╛рдмрд░ рд╣реИред P рдФрд░ Q рдХреЛ рдирд┐рд░реНрдзрд╛рд░рд┐рдд рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП , рд╣рдореЗрдВ рдЕрднреА рднреА ACR рдФрд░ PACF correlograms рдХреЗ рдирд┐рд░реНрдорд╛рдг рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реИред

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


рдкреАрдПрд╕реАрдПрдл рдЧрд╛рд░рдлрд┐рдХ рд╕реЗ рдпрд╣ рджреЗрдЦрд╛ рдЬрд╛ рд╕рдХрддрд╛ рд╣реИ рдХрд┐ рдПрдЖрд░ рдСрд░реНрдбрд░ рдкреА = 4 рд╣реЛрдЧрд╛ , рдФрд░ рдПрд╕реАрдПрдл рдХреЗ рдЕрдиреБрд╕рд╛рд░, рдСрд░реНрдбрд░ рдПрдордП рдХреНрдпреВ = 13 , рдХреНрдпреЛрдВрдХрд┐ 13 рд▓реИрдЧ 0 рдХреЗ рдЕрд▓рд╛рд╡рд╛ рдЕрдиреНрдп рдЕрдВрддрд┐рдо рдЕрдВрддрд░рд╛рд▓ рд╣реИред
рдЕрдм рд╣рдо рдореМрд╕рдореА рдШрдЯрдХреЛрдВ рдкрд░ рдЪрд▓рддреЗ рд╣реИрдВред рдЙрдирдХрд╛ рдореВрд▓реНрдпрд╛рдВрдХрди рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП, рдЖрдкрдХреЛ рдЙрди рд▓реИрдЧреНрд╕ рдХреЛ рджреЗрдЦрдиреЗ рдХреА рдЬрд░реВрд░рдд рд╣реИ рдЬреЛ рдореМрд╕рдореА рдХреЗ рдЖрдХрд╛рд░ рдХреЗ рдЧреБрдгрдХ рд╣реИрдВ, рдпрд╛рдиреА, рдпрджрд┐, рд╣рдорд╛рд░реЗ рдЙрджрд╛рд╣рд░рдг рдХреЗ рд▓рд┐рдП, рдореМрд╕рдореА 52 рд╣реИ, рддреЛ рд▓реИрдЧ 52, 104, 156, ...
рд╣рдорд╛рд░реЗ рдорд╛рдорд▓реЗ рдореЗрдВ, рдкреИрд░рд╛рдореАрдЯрд░ рдкреА рдФрд░ рдХреНрдпреВ 0 рдХреЗ рдмрд░рд╛рдмрд░ рд╣реЛрдЧрд╛ (рдпрд╣ рджреЗрдЦрд╛ рдЬрд╛ рд╕рдХрддрд╛ рд╣реИ рдпрджрд┐ рдЖрдк рдЙрдкрд░реЛрдХреНрдд рд▓реИрдЧ рдкрд░ рдПрд╕реАрдПрдл рдФрд░ рдкреАрдПрд╕реАрдПрдл рдХреЛ рджреЗрдЦрддреЗ рд╣реИрдВ)ред
рд╣рдорд╛рд░реЗ рд╢реЛрдз рдХреЗ рдкрд░рд┐рдгрд╛рдорд╕реНрд╡рд░реВрдк, рд╣рдореЗрдВ рдПрдХ рдореЙрдбрд▓ рдорд┐рд▓рд╛
рдЬреИрд╕рд╛ рдХрд┐ рдЗрд╕ рд▓реЗрдЦ рдХреА рд╢реБрд░реБрдЖрдд рдореЗрдВ рд╕рдВрдХреЗрдд рджрд┐рдпрд╛ рдЧрдпрд╛ рдерд╛, рдореБрдЭреЗ рдкрд╛рдпрдерди рдореЗрдВ рдЗрд╕ рдореЙрдбрд▓ рдХреЛ рдмрдирд╛рдиреЗ рдХреЗ рддрд░реАрдХреЗ рдирд╣реАрдВ рдорд┐рд▓реЗ, рдЗрд╕рд▓рд┐рдП рдореИрдВрдиреЗ рдЖрд░ рд╕реЗ рдПрд░реАрдорд╛ () рдлрд╝рдВрдХреНрд╢рди рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдиреЗ рдХрд╛ рдлреИрд╕рд▓рд╛ рдХрд┐рдпрд╛ред рдЗрд╕рдХреЗ рд▓рд┐рдП, рдПрдЖрд░рдЖрдИрдПрдордП рдореЙрдбрд▓ рдХрд╛ рдХреНрд░рдо рдФрд░, рдпрджрд┐ рдЖрд╡рд╢реНрдпрдХ рд╣реЛ, рддреЛ рдореМрд╕рдореА рдШрдЯрдХ рдХреЗ рдЖрджреЗрд╢ рдХреЛ рдкрд╛рд░рд┐рдд рдХрд░ рджрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИред ред рд▓реЗрдХрд┐рди рдЗрд╕реЗ рдХреЙрд▓ рдХрд░рдиреЗ рд╕реЗ рдкрд╣рд▓реЗ, рдЖрдкрдХреЛ рдХреБрдЫ рдбреЗрдЯрд╛ рддреИрдпрд╛рд░ рдХрд░рдиреЗ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реИред
рдЖрд░рдВрдн рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП, рд╣рдо рдЕрдкрдиреЗ рд╕реНрд░реЛрдд рдХреЛ R рдкреНрд░рд╛рд░реВрдк рдореЗрдВ рд╕реЗрдЯ рдХрд░рддреЗ рд╣реИрдВ рдФрд░ рд╕рдордп рд╢реНрд░реГрдВрдЦрд▓рд╛ рдкреНрд░рд╛рд░реВрдк рдореЗрдВ рдЕрдиреБрд╡рд╛рдж рдХрд░рддреЗ рд╣реИрдВред

 r_df = com.convert_to_r_dataframe(DataFrame(w)) y = stats.ts(r_df) 

рдореЙрдбрд▓ рдХрд╛ рдХреНрд░рдо рд╡реЗрдХреНрдЯрд░ рдЖрд░ рдХреЗ рд░реВрдк рдореЗрдВ рдкрд╛рд░рд┐рдд рдХрд┐рдпрд╛ рдЧрдпрд╛ рд╣реИ, рддреЛ рдЪрд▓рд┐рдП рдЗрд╕реЗ рдмрдирд╛рддреЗ рд╣реИрдВ:

 order = R.IntVector((4,1,13)) 

рдЗрд╕рдХреЗ рдЕрд▓рд╛рд╡рд╛, рдореМрд╕рдореА рдШрдЯрдХ рдХреЗ рдПрдХ рдкреИрд░рд╛рдореАрдЯрд░ рдХреЗ рд░реВрдк рдореЗрдВ, рдПрдХ рд╕реВрдЪреА рдкрд╛рд░рд┐рдд рдХреА рдЬрд╛рддреА рд╣реИ рдЬрд┐рд╕рдореЗрдВ рдЗрд╕рдХрд╛ рдХреНрд░рдо рдФрд░ рдЕрд╡рдзрд┐ рдХрд╛ рдЖрдХрд╛рд░ рд╣реЛрддрд╛ рд╣реИ:

 season = R.ListVector({'order': R.IntVector((0,1,0)), 'period' : 52}) 

рдЕрдм рд╣рдо рдПрдХ рдореЙрдбрд▓ рдмрдирд╛рдиреЗ рдХреЗ рд▓рд┐рдП рддреИрдпрд╛рд░ рд╣реИрдВ:

 model = stats.arima(y, order = order, seasonal=season) 

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

рдореЙрдбрд▓ рдХреА рдкрд░реНрдпрд╛рдкреНрддрддрд╛ рдХреА рдЬрд╛рдБрдЪ рдХрд░рдирд╛ред


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

 %Rpush model %R tsdiag(model, 100) 


рдкрд╣рд▓реА рдкрдВрдХреНрддрд┐ рдореЗрдВ, % Rpush рдирд┐рд░реНрджреЗрд╢ рдЖрд░ рдореЗрдВ рдЙрдкрдпреЛрдЧ рдХреЗ рд▓рд┐рдП рд╡рд╕реНрддреБрдУрдВ рдХреЛ рд▓реЛрдб рдХрд░рддрд╛ рд╣реИред рджреВрд╕рд░реА рдкрдВрдХреНрддрд┐ рдореЗрдВ % R рдХрдерди R рднрд╛рд╖рд╛ рдкреНрд░рд╛рд░реВрдк рдореЗрдВ рдХреЛрдб рдХреЛ рдХреЙрд▓ рдХрд░рддрд╛ рд╣реИред рдпрд╣ рдирд┐рд░реНрдорд╛рдг IPython рдиреЛрдЯрдмреБрдХ рдореЗрдВ рдХрд╛рдо рдХрд░рддрд╛ рд╣реИред
рдКрдкрд░ рджрд┐рдП рдЧрдП рдЧреНрд░рд╛рдлрд╝ рд╕реЗ, рдЖрдк рджреЗрдЦ рд╕рдХрддреЗ рд╣реИрдВ рдХрд┐ рдЕрд╡рд╢рд┐рд╖реНрдЯ рд╕реНрд╡рддрдВрддреНрд░ рд╣реИрдВ (рдЗрд╕реЗ ACF рд╕реЗ рджреЗрдЦрд╛ рдЬрд╛ рд╕рдХрддрд╛ рд╣реИ)ред рдЗрд╕рдХреЗ рдЕрд▓рд╛рд╡рд╛, рдХреНрдпреВ-рд╕рд╛рдВрдЦреНрдпрд┐рдХреА рдХреЗ рдЧреНрд░рд╛рдл рд╕реЗ, рдЖрдк рджреЗрдЦ рд╕рдХрддреЗ рд╣реИрдВ рдХрд┐ рд╕рднреА рдмрд┐рдВрджреБрдУрдВ рдкрд░ рдкреА-рд╡реИрд▓реНрдпреВ рдорд╣рддреНрд╡ рд╕реНрддрд░ рд╕реЗ рдЕрдзрд┐рдХ рд╣реИ, рдЗрд╕рд╕реЗ рд╣рдо рдирд┐рд╖реНрдХрд░реНрд╖ рдирд┐рдХрд╛рд▓ рд╕рдХрддреЗ рд╣реИрдВ рдХрд┐ рдЕрд╡рд╢реЗрд╖ "рд╕рдлреЗрдж рд╢реЛрд░" рд╣реЛрдиреЗ рдХреА рд╕рдмрд╕реЗ рдЕрдзрд┐рдХ рд╕рдВрднрд╛рд╡рдирд╛ рд╣реИред

рднрд╡рд┐рд╖реНрдпрд╡рд╛рдгреА


рдЗрд╕реЗ рдЪрд▓рд╛рдиреЗ рдХреЗ рд▓рд┐рдП, рдЖрдкрдХреЛ рдкреВрд░реНрд╡рд╛рдиреБрдорд╛рди рдкреБрд╕реНрддрдХрд╛рд▓рдп рдХреЛ рд▓реЛрдб рдХрд░рдиреЗ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реИ

 forecast = importr('forecast') 

рдкреВрд░реНрд╡рд╛рдиреБрдорд╛рди рдкрд░рд┐рдгрд╛рдо рдкреНрд░рд╛рдкреНрдд рдХрд░рдиреЗ рдХреЗ рджреЛ рддрд░реАрдХреЗ рд╣реИрдВред

рд╡рд┐рдзрд┐ 1. рдпрд╣ IPython рдФрд░ R. рдХреА рдПрдХреАрдХрд░рдг рдХреНрд╖рдорддрд╛рдУрдВ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдирд╛ рд╣реИ, рдЬреЛ рдкрд┐рдЫрд▓реЗ рднрд╛рдЧ рдореЗрдВ рджрд┐рдЦрд╛рдпрд╛ рдЧрдпрд╛ рдерд╛:

 %R plot(forecast(model)) 



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

 f = forecast.forecast(model) #  pred = [i[1] for i in f[3].iteritems()] #  dt = date_range(w.index[-1], periods=len(pred)+1,freq='W')[1:] #    pr = Series(pred, index = dt) #   TimeSeries 

рдЕрдм рдкрд░рд┐рдгрд╛рдо рдкреНрд░рджрд░реНрд╢рд┐рдд рдХрд░реЗрдВ

 w.plot(figsize=(12,6)) pr.plot(color = 'red') 



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


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

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


All Articles