De L'Auto.arima pour prévoir dans la R
Je n'arrive pas à comprendre la syntaxe de la façon dont forecast()
s'applique extérieure régresseurs dans le library(forecast)
dans R
.
Mon ajustement ressemble à ceci:
fit <- auto.arima(Y,xreg=factors)
où Y
est un timeSeries
objet 100 x 1 et des facteurs est un timeSeries
objet 100 x 5.
Quand je vais à la prévision, j'applique...
forecast(fit, h=horizon)
Et j'obtiens une erreur:
Error in forecast.Arima(fit, h = horizon) : No regressors provided
Il veut me rajouter les xregressors de l'ajustement? Je pensais que ces ont été inclus dans l' fit
objet comme fit$xreg
. Est-ce à dire il est demandé pour les valeurs futures de la xregressors, ou que je devrais répéter les mêmes valeurs que j'ai utilisé lors de l'ajustement ensemble? La documentation ne permet pas de couvrir le sens de xreg
dans les prévisions de l'étape.
Je crois que tout cela signifie que je devrais utiliser
forecast(fit, h=horizon,xreg=factors)
ou
forecast(fit, h=horizon,xreg=fit$xreg)
Qui donne les mêmes résultats. Mais je ne suis pas sûr de savoir si la prévision de l'étape est l'interprétation des facteurs comme les valeurs futures, ou de manière appropriée que les précédents. Donc,
- Est ce une prévision de purement les valeurs du passé, comme je m'attendre?
- Pourquoi dois-je spécifier le xreg valeurs deux fois? Il ne fonctionne pas si je les exclure, de sorte qu'il ne se comporte pas comme une option.
Je vois ce que tu veux dire, mais mon code est vraiment juste les deux lignes répétées ci-dessus,
auto.arima()
et forecast()
. Ma question est au sujet de la façon dont les prévisions de l'appel de fonction est l'interprétation de l'externe régresseurs.encore, je n'ai pas de vos données (ou de certains de données, par exemple) qui peuvent reproduire le message d'erreur que vous obtenez.
OriginalL'auteur Mittenchops | 2012-05-15
Vous devez vous connecter pour publier un commentaire.
Corrigez-moi si je me trompe, mais je pense que vous ne pouvez pas comprendre complètement comment le modèle ARIMA avec régresseurs œuvres.
Lorsque vous prévoir avec un simple modèle ARIMA (sans variables explicatives), il utilise simplement les valeurs du passé de votre temps à la série de prédire les valeurs futures. Dans un tel modèle, il vous suffit d'indiquer votre horizon, et il vous donnera une prévision jusqu'à ce que la ligne d'horizon.
Lorsque vous utilisez des variables explicatives de construire un modèle ARIMA, vous devez inclure les valeurs futures des variables explicatives à prévoir. Par exemple, si vous avez utilisé la température comme variable explicative, et vous avez été la prédiction de l'incidence de la maladie, alors vous devez les valeurs futures de la température pour prédire l'incidence de la maladie.
En fait, la documentation ne parler
xreg
spécifiquement. rechercher?forecast.Arima
et de regarder à la fois les argumentsh
etxreg
. Vous verrez que Sixreg
est utilisé, alorsh
est ignoré. Pourquoi? Parce que si votre fonction utilisexreg
, puis il besoins pour la prévision.Donc, dans votre code,
h
a été tout simplement ignorés lorsque vous avez inclusxreg
. Puisque vous venez d'utiliser les valeurs que vous avez utilisé pour l'ajustement du modèle, il te donne tous les pronostics pour le même ensemble de variables explicatives comme s'ils étaient dans l'avenir.OriginalL'auteur nograpes