Gestione dei dati mancanti in un modello di livellamento esponenziale


14

Non sembra esserci un modo standard per gestire i dati mancanti nel contesto della famiglia di modelli di livellamento esponenziale. In particolare, l'implementazione di R chiamata ets nel pacchetto di previsione sembra prendere solo la sottosequenza più lunga senza dati mancanti, e il libro "Previsioni con livellamento esponenziale" di Hyndman et al. non sembra affatto parlare di dati mancanti.

Vorrei fare un po 'di più, se i miei utenti mi chiedono esplicitamente di farlo (e se i dati mancanti non si verificano troppo vicini tra loro o in troppi periodi che sono esattamente a una stagione di distanza). In particolare, quello che ho in mente è il seguente. Durante la simulazione, ogni volta che incontrerei un valore mancante , sostituirei la previsione del punto corrente ˜ y t con , in modo che . Ciò, ad esempio, renderebbe il punto dati non considerato per il processo di ottimizzazione dei parametri.yty~tytεt=0

Una volta che ho una misura ragionevole per i parametri, posso stimare la deviazione standard degli errori (si presume che sia normale con la media ) e verificare che l'uso di valori per generati da tale distribuzione non riduca la probabilità di un fattore . Vorrei usare tali valori anche per le previsioni (usando la simulazione).0εt

Ci sono insidie ​​note con questo metodo?


Hai mai considerato di usare un processo gaussiano con un kernel di covarianza esponenziale? Sembra un modo naturale per gestire i dati mancanti e ricavare intervalli di confidenza. R ha il pacchetto GPFit che puoi esaminare.
LE Rogerson,

Risposte:


2

Il tuo approccio ha senso. Un software commerciale a cui sono stato associato per un paio di anni ha fatto esattamente questo.

Il tuo schema si applica al Single Exponential Smoothing (SES), ma ovviamente potresti applicare lo stesso trattamento ai trend o ai componenti stagionali. Per quelli stagionali, è necessario tornare indietro di un ciclo stagionale completo, proprio come per l'aggiornamento.

Un'altra alternativa sarebbe ovviamente quella di interpolare semplicemente i valori mancanti. Questa è un'opzione nelle versioni più recenti di ets(..., na.action="na.interp").

Da quel poco che so dei modelli dello spazio degli stati, non dovrebbe essere eccessivamente difficile trattare semplicemente i dati mancanti come non osservati. Non sono sicuro del perché questo non sia implementato nel forecastpacchetto. Una rapida ricerca attraverso il blog di Rob Hyndman non ha prodotto nulla di utile.

Utilizzando il nostro sito, riconosci di aver letto e compreso le nostre Informativa sui cookie e Informativa sulla privacy.
Licensed under cc by-sa 3.0 with attribution required.