2013-06-17 10 views
8

Ho un'istantanea oraria di un evento a partire dal 2012-05-15-0700 al 2013-05-17-1800. Come posso creare un Timeseries su questi dati ed eseguire HoltWinters su di esso?Come creare un R TimeSeries per i dati orari

ho provato la seguente

EventData<-ts(Eventmatrix$X20030,start=c(2012,5,15),frequency=8000) 
HoltWinters(EventData) 

Ma ho ottenuto l'errore in decompongono (ts (x [1L: vento], start = start (x), la frequenza = f), stagionale): serie temporali non ha o meno di 2 periodi

Quale valore devo inserire dalla frequenza?

+0

Questo [post] (http://robjhyndman.com/hyndsight/seasonal-periods/) e questa [risposta] (http : //stats.stackexchange.com/a/123010/46401) di Hyndman spiega quale frequenza scegliere. Invece di usare 'xts' come suggerito da @dickoa, puoi anche usare la funzione/oggetto' msts' dal pacchetto'forecast', con l'ulteriore vantaggio, che ti permette di specificare più stagioni/cicli. Il pacchetto include anche una funzione 'hw', che è una comoda funzione wrapper per' forecast (ets (...)) '. – bonna

risposta

14

Penso che dovresti considerare l'utilizzo di ets dal pacchetto forecast per eseguire il livellamento esponenziale. Leggi this post per fare un confronto tra HoltWinters e ets.

require(xts) 
require(forecast) 

time_index <- seq(from = as.POSIXct("2012-05-15 07:00"), 
        to = as.POSIXct("2012-05-17 18:00"), by = "hour") 
set.seed(1) 
value <- rnorm(n = length(time_index)) 

eventdata <- xts(value, order.by = time_index) 
ets(eventdata) 

Ora, se volete sapere di più sulla sintassi del ets controllare l'aiuto di questa funzione e il servizio di prenotazione online di Rob Hyndman (Chap 7 section 6)

+0

grazie, ma supponiamo di voler creare un TimeSeries usando la funzione tf, per questo dato orario, come procedere. Scusa, sono un newb della R. –

+0

@DotDot 'xts' estendono la classe' ts' e ogni funzione che funziona con 'ts' funziona con il normale oggetto' xts'. Quindi, in pratica, non c'è bisogno di usare 'ts' per i dati orari. I pacchetti 'zoo' o' timeSeries' possono essere usati anche per creare serie temporali orarie. – dickoa

0

prega di dare un'occhiata al seguente post che potrebbero rispondere la domanda:

Decompose xts hourly time series

sua spiega come è possibile creare un oggetto XTS utilizzando oggetti POSIXct. Questo oggetto xts può avere il proprio attributo di frequenza impostato manualmente e probabilmente sarà possibile utilizzare HoltWinters

+0

Questo dovrebbe essere un commento! –

+0

Non so perché non riesco a metterlo in commento ... –

+1

@PareshMayani questo poster non ha abbastanza reputazione per commentare. Samy, le risposte al solo collegamento non sono adatte allo Stack Overflow. Potresti modificare la tua risposta per includere i dettagli della risposta collegata che chiarisca come potrebbe essere usata per questa domanda? – josliber

Problemi correlati