Attualmente sto lavorando a un progetto per animali per prevedere i futuri prezzi del petrolio base dai prezzi storici del petrolio base. I dati sono settimanali, ma ci sono alcuni periodi tra i quali mancano i prezzi.Modellazione di serie temporali con dati irregolari
Sono un po 'd'accordo con la modellazione di serie temporali con dati completi, ma quando si tratta di quelli irregolari, i modelli che ho imparato potrebbero non essere applicabili. Uso la classe xts e procedo con i modelli ARIMA in R come al solito?
Dopo aver elaborato un modello per prevedere i prezzi futuri, vorrei tenere conto delle fluttuazioni del prezzo del greggio, del margine di profitto del diesel, delle vendite di automobili, della crescita economica e così via (Multivariabile?) Per migliorare l'accuratezza. Qualcuno può far luce su come faccio a fare questo in modo efficiente? Nella mia mente, sembra un labirinto.
EDIT: rasato dati qui: https://docs.google.com/document/d/18pt4ulTpaVWQhVKn9XJHhQjvKwNI9uQystLL4WYinrY/edit
Coding:
Mod.fit<-arima(Y,order =c(3,2,6), method ="ML")
Risultato: messaggio Attenzione: Nel log (s2): NaNs prodotto
Sarà questo avvertimento influenzerà la mia precisione del modello?
Con i dati mancanti, non è possibile utilizzare ACF e PACF. C'è un modo migliore per selezionare i modelli? Ho usato AIC (Akaike's Information Criterion) per confrontare diversi modelli ARIMA usando questo codice. ARIMA (3,2,6) ha dato il più piccolo AIC.
Coding:
AIC<-matrix(0,6,6)
for(p in 0:5)
for(q in 0:5)
{
mod.fit<-arima(Y,order=c(p,2,q))
AIC[p+1,q+1]<-mod.fit$aic
p
}
AIC
Risultato:
[,1] [,2] [,3] [,4] [,5] [,6]
[1,] 1396.913 1328.481 1327.896 1328.350 1326.057 1325.063
[2,] 1343.925 1326.862 1328.321 1328.644 1325.239 1318.282
[3,] 1334.642 1328.013 1330.005 1327.304 1326.882 1314.239
[4,] 1336.393 1329.954 1324.114 1322.136 1323.567 1316.150
[5,] 1319.137 1321.030 1320.575 1321.287 1323.750 1316.815
[6,] 1321.135 1322.634 1320.115 1323.670 1325.649 1318.015
Benvenuti in SO. La pubblicazione di alcuni dati è sempre una buona idea, poiché mostra alcune righe di codice che dimostrano ciò che hai già provato. Vedi http://stackoverflow.com/q/5963269/602276 per alcuni suggerimenti su come scrivere una buona domanda. – Andrie
Grazie Andrie.Apprezzo il tuo consiglio. Inserirò il codice il prima possibile. – leejy
@Andrie Ho aggiornato la domanda con i dati codificati e tagliati. Potresti guardarci sopra? Grazie! Sono sulla buona strada? – leejy