Descrizione della classe¶
classeARIMAX
(dati, formula, ar, ma, integ, target, famiglia)¶
Modelli a media mobile autoregressiva integrata di variabili esogene (ARIMAX).
Parametro | Tipo | Descrizione |
---|---|---|
data | pd.DataFrame o np.ndarray | Contiene la serie temporale univariata |
formula | stringa | notazione Patsy che specifica la regressione |
ar | int | Il numero di ritardi autoregressivi |
ma | int | Il numero di ritardi della media mobile |
integ | int | Quante volte differenziare i dati (default: 0) |
target | stringa o int | Quale colonna di DataFrame/array usare. |
family | pf.Family instance | La distribuzione per la serie temporale, ad esempio pf.Normal() |
Attributes
latent_variables
¶
A pf.LatentVariables() che contiene informazioni sulle variabili latenti del modello, le impostazioni precedenti, qualsiasi valore montato, i valori iniziali e altre informazioni sulle variabili latenti. Quando un modello viene adattato, è qui che le variabili latenti vengono aggiornate/memorizzate.Si veda la documentazione su Latent Variables per informazioni sugli attributi all’interno di questo oggetto, così come i metodi per accedere alle informazioni sulle variabili latenti.
Methods
adjust_prior
(index, prior)¶
Regola i priori per le variabili latenti del modello. Le variabili latenti e i loro indici possono essere visualizzati stampando l’attributo latent_variables
collegato all’istanza del modello.
Parametro | Tipo | Descrizione |
---|---|---|
indice | int | Index della variabile latente da cambiare |
prior | pf.Istanza della famiglia | Distribuzione precedente, per esempio pf.Normal() |
Ritorna: void – cambia il modello latent_variables
attributo
fit
(metodo, **kwargs)¶
Stima le variabili latenti per il modello. L’utente sceglie un’opzione di inferenza e il metodo restituisce un oggetto risultato, oltre ad aggiornare l’latent_variables
attributo del modello.
Parametro | Tipo | Descrizione |
---|---|---|
metodo | str | opzione di inferenza: es.g. ‘M-H’ o ‘MLE’ |
Vedi le sezioni Inferenza Bayesiana e Inferenza Classica della documentazione per la lista completa delle opzioni di inferenza. Possono essere inseriti parametri opzionali che sono rilevanti per il particolare modo di inferenza scelto.
Ritorna: istanza pf.Results con informazioni per le variabili latenti stimate
plot_fit
(**kwargs)¶
Piazza il fit del modello rispetto ai dati. Gli argomenti opzionali includono figsize, le dimensioni della figura da tracciare.
Ritorna : void – mostra un plot di matplotlib
plot_ppc
(T, nsims)¶
Traccia un istogramma per un controllo predittivo posteriore con una misura di discrepanza a scelta dell’utente. Questo metodo funziona solo se hai fatto l’adattamento usando l’inferenza bayesiana.
Parametro | Tipo | Descrizione |
---|---|---|
T | funzione | Discrepanza, es. np.mean o np.max |
nsims | int | Quante simulazioni per il PPC |
Risulta: void – mostra un matplotlib plot
plot_predict
(h, oos_data, past_values, intervals, **kwargs)¶
Piatta le previsioni del modello, insieme agli intervalli.
Parametro | Tipo | Descrizione |
---|---|---|
h | int | Quanti passi per prevedere in anticipo |
oos_data | pd.DataFrame | Variabili esogene in un frame per h passi |
past_values | int | Quanti datapoint passati da tracciare |
intervalli | booleano | Se tracciare gli intervalli o no |
Per essere chiari, l’argomento oos_data dovrebbe essere un DataFrame nello stesso formato dell’initialdataframe usato per inizializzare l’istanza del modello. La ragione è che per prevedere i valori futuri, è necessario specificare le ipotesi sulle variabili esogene per il futuro. Per esempio, se prevedete h passi avanti, il metodo prenderà le prime h righe da oos_data e prenderà i valori delle variabili esogene che avete chiesto nella formula patsy.
Gli argomenti opzionali includono figsize – le dimensioni della figura da tracciare. Si prega di notare che se si usa la massima verosimiglianza o l’inferenza variazionale, gli intervalli mostrati non rifletteranno l’incertezza della variabile latente. Solo Metropolis-Hastings vi darà intervalli di previsione completamente bayesiani. Gli intervalli bayesiani con inferenza variazionale non sono mostrati a causa della limitazione dell’inferenza del campo medio che non tiene conto delle correlazioni posteriori.
Returns : void – mostra un plot di matplotlib
plot_predict_is
(h, fit_once, fit_method, **kwargs)¶
Piatta le previsioni di rolling in-sample del modello. Questo significa che l’utente finge che l’ultima sottosezione di dati sia fuori campione, e fa le previsioni dopo ogni periodo e valuta come sono andate bene. L’utente può scegliere se adattare i parametri una volta all’inizio o ad ogni passo temporale.
Parametro | Tipo | Descrizione |
---|---|---|
h | int | Quanti timestep precedenti usare |
fit_once | boolean | Se adattarsi una volta, o ogni timetep |
fit_method | str | Quale opzione di inferenza, ad es.g. ‘MLE’ |
Gli argomenti opzionali includono figsize – le dimensioni della figura da tracciare. h è un int di quanti passi precedenti su cui simulare le prestazioni.
Returns : void – mostra un plot di matplotlib
plot_sample
(nsims, plot_data=True)¶
Plottare campioni della densità predittiva posteriore del modello. Questo metodo funziona solo se avete montato il modello usando l’inferenza bayesiana.
Parametro | Tipo | Descrizione |
---|---|---|
nsims | int | Quanti campioni da disegnare |
plot_data | boolean | Se tracciare anche i dati reali |
Returns : void – mostra un plot di matplotlib
plot_z
(indices, figsize)¶
Ritorna un plot delle variabili latenti e la loro incertezza associata.
Parametro | Tipo | Descrizione |
---|---|---|
indices | int o lista | Quale indici di variabile latente da tracciare |
figsize | tupla | Dimensione della figura di matplotlib |
Returns : void – mostra un matplotlib plot
ppc
(T, nsims)¶
Ritorna un valore p per un controllo predittivo posteriore. Questo metodo funziona solo se hai fatto il calcolo usando l’inferenza bayesiana.
Parametro | Tipo | Descrizione |
---|---|---|
T | funzione | Discrepanza, es. np.mean o np.max |
nsims | int | Quante simulazioni per il PPC |
Risulta: int – il valore p per il test di discrepanza
predict
(h, oos_data, intervals=False)¶
Ritorna un DataFrame di previsioni del modello.
Parametro | Tipo | Descrizione |
---|---|---|
h | int | Quanti passi per prevedere in anticipo |
oos_data | pd.DataFrame | Variabili esogene in un frame per h passi |
intervalli | booleano | Se restituire intervalli di previsione |
Per essere chiari, l’argomento oos_data dovrebbe essere un DataFrame nello stesso formato di initialdataframe usato per inizializzare l’istanza del modello. La ragione è che per prevedere i valori futuri, è necessario specificare le ipotesi sulle variabili esogene per il futuro. Per esempio, se prevedete h passi avanti, il metodo prenderà le 5 prime righe da oos_data e prenderà i valori delle variabili esogene che avete specificato come variabili esogene nella formula patsy.
Si prega di notare che se usate la massima verosimiglianza o l’inferenza variazionale, gli intervalli mostrati non riflettono l’incertezza della variabile latente. Solo Metropolis-Hastings vi darà intervalli di predizione completamente bayesiani. Gli intervalli bayesiani con l’inferenza variazionale non sono mostrati a causa della limitazione dell’inferenza del campo medio che non tiene conto delle correlazioni posteriori.
Ritorna: pd.DataFrame – le previsioni del modello
predict_is
(h, fit_once, fit_method)¶
Ritorna DataFrame delle previsioni a rotazione nel campione del modello.
Parametro | Tipo | Descrizione |
---|---|---|
h | int | Quanti timestep precedenti usare |
fit_once | boolean | Se adattarsi una volta, o ogni timetep |
fit_method | str | Quale opzione di inferenza, ad es.g. ‘MLE’ |
Ritorna: pd.DataFrame – le previsioni del modello
sample
(nsims)¶
Ritorna np.ndarray di estrazioni dei dati dalla densità predittiva posteriore. Questo metodo funziona solo se avete montato il modello usando l’inferenza bayesiana.
Parametro | Tipo | Descrizione |
---|---|---|
nsims | int | Quante estrazioni posteriori prendere |
Ritorna : np.ndarray – campioni dalla densità predittiva posteriore
.