Prévision de séries chronologiques d'Arima (auto.arima) avec plusieurs variables exogènes dans R

14

Je voudrais effectuer une prévision basée sur un modèle ARIMA à séries temporelles multiples avec plusieurs variables exogènes. Étant donné que je ne suis pas très compétent en ce qui concerne ni les statistiques ni le RI, je ne veux pas rester aussi simple que possible (les prévisions de tendance sur 3 mois sont suffisantes).

J'ai 1 série chronologique dépendante et 3 à 5 séries chronologiques prédictives, toutes les données mensuelles, aucun écart, même "horizon" temporel.

J'ai rencontré la fonction auto.arima et je me suis demandé si ce serait une solution adaptée à mon problème. J'ai différents prix des produits de base et les prix des produits fabriqués à partir d'eux. Toutes les données brutes ne sont pas stationnaires mais via une différenciation de premier ordre, elles deviennent toutes des données stationnaires. ADF, KPSS l'indiquent. (Cela signifie que j'ai testé l'intégration, non?).

Ma question est maintenant: comment puis-je appliquer cela avec la fonction auto.arima ET ARIMA est-il la bonne approche de toute façon? Certains ppl m'ont déjà conseillé d'utiliser VAR, mais est-ce possible avec ARIMA aussi?

Le tableau suivant est mes données. En fait, l'ensemble de données monte jusqu'à 105 observations, mais les 50 premières suffiront. La tendance ainsi que la saisonnalité sont évidemment d'intérêt ici.

entrez la description de l'image ici

Merci pour tous conseils et aide! Georg

George
la source
veuillez publier vos données afin qu'elles puissent être téléchargées. utilisez Excel. Cela pourrait simplement être une tâche pour identifier les séries d'entrée inutiles (éventuellement significativement corrélées). Je ne pense pas que le VAR soit nécessaire ou que les composants principaux
soient

Réponses:

10

y

Pour auto.arima()travailler avec des régresseurs externes, rassemblez vos régresseurs dans une matrice X, que vous alimentez dans le xregparamètre de auto.arima(). (Bien sûr, Xdoit avoir le même nombre de lignes que la série chronologique que yvous modélisez.)

Pour les prévisions, vous aurez besoin des futures valeurs de vos variables explicatives, que vous nourrissez puis à nouveau dans le xregparamètre forecast.

Les pages d'aide sont ?auto.arimaet ?forecast.Arima(notez le A majuscule - ce n'est pas une faute de frappe. Ne me demandez pas ...).

Stephan Kolassa
la source
1
(+1) Vous pourriez développer un peu l'idée de la causalité et comment la tester. Il peut être utile de compléter votre réponse, car vous mentionnez que la décision d'utiliser ARIMA est déterminée par le sens de la causalité parmi les variables. Pensez-vous par exemple au test de causalité de Granger ou au test de Hausman ? Merci.
javlacalle
3
@javlacalle: Je ne suis pas très fan des tests statistiques de causalité (dont le test de Granger est le plus connu). Je préfère de loin décider de la "causalité probable" en fonction du sujet. Par exemple, je n'utiliserais pas un test de Granger pour évaluer si une réduction de prix augmente les ventes des supermarchés ou l'inverse. Ni si le PIB, les taux de change et la création d'emplois sont mutuellement causaux. Dans les deux cas, la question semble assez évidente, et un test conforme à la théorie ne nous apprendra rien, tandis qu'un test contredisant la théorie ne sera que déroutant (et probablement rien de plus que du bruit).
Stephan Kolassa
1
... Je sais que je
m'ouvre
@ Stephan: Merci pour votre contribution. Bien que mon y soit définitivement causé par mes régresseurs et non l'inverse, mais mes régresseurs sont définitivement en corrélation les uns avec les autres et devraient également avoir des impacts plus ou moins directs les uns sur les autres. Selon votre commentaire, cela signifie que je devrais utiliser VAR au lieu d'Arima, car cela évitera des problèmes (?). J'utilise ici un ensemble de prix des matières premières / produits, qui sont fondamentalement tous liés les uns aux autres jusqu'à un certain point. La «matière première» est mon Y, les produits de la chaîne de valeur, ainsi que les produits secondaires, etc. sont mes prédicteurs.
George
1
La connaissance du contexte des données est toujours utile et les résultats de toute analyse doivent être comparés à nos connaissances a priori . Une certaine prudence est néanmoins de mise. L'intuition échoue parfois et les théories qui sont parfois considérées comme acquises reposent sur des hypothèses qui ne sont pas étayées par des faits. Mais je comprends ce que vous voulez dire et êtes d'accord dans l'ensemble.
javlacalle