Klassbeskrivning¶
klassARIMAX
(data, formula, ar, ma, integ, target, family)¶
Autoregressivt integrerat rörligt medelvärde för exogena variabler (ARIMAX).
Parameter | Typ | Beskrivning |
---|---|---|
data | pd.DataFrame eller np.ndarray | Innehåller den univariata tidsserien |
formel | sträng | Patsy-notation som specificerar regressionen |
ar | int | Den antal autoregressiva eftersläpningar |
ma | int | Antalet eftersläpningar av glidande medelvärde |
integ | int | Hur många gånger man ska skilja data (standard: 0) |
target | string eller int | Vilken kolumn i DataFrame/array som ska användas. |
family | pf.Family instance | Distributionen för tidsserien,t.ex. pf.Normal() |
Attributes
latent_variables
¶
A pf.LatentVariables()-objekt som innehåller information om modellens latenta variabler, prioritetsinställningar, eventuella anpassade värden, startvärden och annan information om latenta variabler. När en modell anpassas är det här som de latenta variablerna uppdateras/lagras.Se dokumentationen om latenta variabler för information om attribut inom det här objektet samt metoder för att komma åt informationen om de latenta variablerna.
Metoder
adjust_prior
(index, prior)¶
Justerar priorerna för modellens latenta variabler. De latenta variablerna och deras index kan visas genom att skriva ut attributet latent_variables
som är kopplat till modellinstansen.
Parameter | Typ | Beskrivning |
---|---|---|
index | int | Index för den latenta variabel som ska ändras |
prior | pf.Family instance | Prior distribution, t.ex. pf.Normal() |
Returnerar: void – ändrar modellen latent_variables
attribute
fit
(method, **kwargs)¶
Skattar latenta variabler för modellen. Användaren väljer ett inferensalternativ och metoden returnerar ett resultatobjekt samt uppdaterar modellens latent_variables
attribut.
Parameter | Typ | Beskrivning |
---|---|---|
Metod | str | Inferensalternativ: e.t.ex. ”M-H” eller ”MLE” |
Se avsnitten Bayesian Inference och Classical Inference i dokumentationen för en fullständig lista över inferensalternativ. Valfria parametrar kan anges som är relevanta för det valda inferenssättet.
Returnerar: pf.Results instans med information om de uppskattade latenta variablerna
plot_fit
(**kwargs)¶
Plottar modellens anpassning mot data. Valfria argument inkluderar figsize,dimensionerna på figuren som ska plottas.
Returnerar : void – visar en matplotlib-plott
plot_ppc
(T, nsims)¶
Plottar ett histogram för en efterföljande prediktiv kontroll med ett diskrepansmått som användaren väljer. Den här metoden fungerar endast om du har anpassat med Bayesiansk inferens.
Parameter | Typ | Typ | Beskrivning |
---|---|---|---|
T | Funktion | Diskrepans, t.ex. np.mean eller np.max |
|
nsims | int | Hur många simuleringar för PPC |
Resultat: void – visar en matplotlib plot
plot_predict
(h, oos_data, past_values, intervals, **kwargs)¶
Plottar modellens förutsägelser tillsammans med intervaller.
Parameter | Typ | Beskrivning |
---|---|---|
h | int | Hur många steg man ska prognostisera framåt |
oos_data | pd.DataFrame | Exogena variabler i en ram för h steg |
past_values | int | Hur många tidigare datapunkter to plot |
intervals | boolean | Ob man ska plotta intervaller eller inte |
För att vara tydlig, oos_data-argumentet bör vara ett DataFrame i samma format som initialdataframe som används för att initiera modellinstansen. Anledningen är att man för att förutsäga framtida värden måste ange antaganden om exogena variabler för framtiden. Om du till exempel förutsäger h steg framåt kommer metoden att ta de h första raderna från oos_data och ta värdena för de exogena variablerna som du frågade efter i patsy-formeln.
Optionella argument inkluderar figsize – dimensionerna på figuren som ska plottas. Observera att om du använder Maximum Likelihood eller Variational Inference kommer de intervall som visas inte att återspegla osäkerheten hos de latenta variablerna. Endast Metropolis-Hastings ger dig helt Bayesianska prognosintervall. Bayesianska intervaller med variationsinferens visas inte på grund av begränsningen av medelfältsinferens genom att den inte tar hänsyn till efterföljande korrelationer.
Returnerar : void – visar en matplotlib-plott
plot_predict_is
(h, fit_once, fit_method, **kwargs)¶
Plottar rullande prediktioner i stickprov för modellen. Detta innebär att användaren låtsas att ett sista delavsnitt av data är out-of-sample, och gör prognoser efter varje period och bedömer hur väl de lyckades. Användaren kan välja om parametrarna ska anpassas en gång i början eller vid varje tidssteg.
Parameter | Typ | Beskrivning |
---|---|---|
h | int | Hur många tidigare tidssteg som ska användas |
fit_once | boolean | Om det ska passa en gång, eller varje tidssteg |
fit_method | str | Vilket inferensalternativ, t.ex.t.ex. ’MLE’ |
Optionella argument inkluderar figsize – dimensionerna på figuren som ska plottas. h är ett int om hur många tidigare steg som ska simulera prestanda på.
Returnerar : void – visar en matplotlib-plott
plot_sample
(nsims, plot_data=True)¶
Plottar stickprover från modellens prediktiva täthet i efterhand. Den här metoden fungerar endast om du har anpassat modellen med hjälp av Bayesiansk inferens.
Parameter | Typ | Beskrivning |
---|---|---|
nsims | int | Hur många provtagningar ska göras |
plot_data | boolean | Om man ska plotta de riktiga uppgifterna också |
Returnerar : void – visar en matplotlib plot
plot_z
(indices, figsize)¶
Returnerar en plot av de latenta variablerna och deras tillhörande osäkerhet.
Parameter | Typ | Beskrivning |
---|---|---|
indices | int eller list | Vad. latenta variabler som ska plottas |
figsize | tupel | Storlek på matplotlib-figuren |
Returnerar : void – visar en matplotlib plot
ppc
(T, nsims)¶
Returnerar ett p-värde för en efterföljande prediktiv kontroll. Denna metod fungerar endast om du harfittat med Bayesiansk inferens.
Parameter | Typ | Typ | Beskrivning |
---|---|---|---|
T | funktion | Diskrepans, t.ex. np.mean eller np.max |
|
nsims | int | Hur många simuleringar för PPC |
Resultat: int – p-värdet för diskrepanstestet
predict
(h, oos_data, intervals=False)¶
Returnerar ett DataFrame med modellprognoser.
Parameter | Typ | Beskrivning |
---|---|---|
h | int | Hur många steg att förutspå framåt |
oos_data | pd.DataFrame | Exogena variabler i en ram för h steg |
intervals | boolean | Om det ska återges prediktionsintervall |
För att det ska vara tydligt bör oos_data-argumentet vara en DataFrame i samma format som initialdataframe som används för att initialisera modellinstansen. Anledningen är att man för att förutsäga framtida värden måste ange antaganden om exogena variabler för framtiden. Om du till exempel förutsäger h steg framåt kommer metoden att ta de 5 första raderna från oos_data och ta värdena för de exogena variabler som du specificerade som exogena variabler i patsy-formeln.
Observera att om du använder Maximum Likelihood eller Variational Inference kommer de intervall som visas inte att reflektera osäkerheten hos de latenta variablerna. Endast Metropolis-Hastings ger dig helt Bayesianska prediktionsintervall. Bayesianska intervaller med variationsinferens visas inte på grund av begränsningen av medelfältsinferens genom att den inte tar hänsyn till efterföljande korrelationer.
Returnerar : pd.DataFrame – modellens förutsägelser
predict_is
(h, fit_once, fit_method)¶
Returnerar DataFrame med rullande förutsägelser i stickprov för modellen.
Parameter | Typ | Beskrivning |
---|---|---|
h | int | Hur många tidigare tidssteg som ska användas |
fit_once | boolean | Om det ska passa en gång, eller varje tidssteg |
fit_method | str | Vilket inferensalternativ, t.ex.t.ex. ’MLE’ |
Returnerar : pd.DataFrame – modellens förutsägelser
sample
(nsims)¶
Returnerar np.ndarray av dragningar av data från den efterföljande prediktiva densiteten. Den här metoden fungerar endast om du har anpassat modellen med hjälp av Bayesiansk inferens.
Parameter | Typ | Beskrivning |
---|---|---|
nsims | int | Hur många efterföljande dragningar som ska göras |
Returnerar : np.ndarray – prov från den efterföljande prediktiva tätheten.