Erfassung der Saisonalität in multipler Regression für tägliche Daten

13

Ich habe tägliche Verkaufsdaten für ein Produkt, das sehr saisonabhängig ist. Ich möchte die Saisonalität im Regressionsmodell erfassen. Ich habe gelesen, dass Sie in diesem Fall, wenn Sie vierteljährliche oder monatliche Daten haben, 3 bzw. 11 Dummy-Variablen erstellen können - aber kann ich mit täglichen Daten umgehen?

Ich habe drei Jahre tägliche Daten. Die unabhängigen Variablen sind Preis, Werbeflagge (Ja / Nein) und Temperatur. Die abhängige Variable ist der Umsatz dieses Produkts. Ich suche kein Zeitreihenmodell, da ich ein Mehrfachregressionsmodell verwende.

Arushi
quelle
Wie viele Daten haben Sie? Wie viele Jahre wert? Haben Sie Daten zu Temperaturen? Wie ist der Rest Ihres Modells? Was sind deine DV und IVs?
Peter Flom - Wiedereinsetzung von Monica
Modellieren Sie Ihre Daten zusätzlich zu den Fragen von Peter Flom als univariate Zeitreihen oder als multivariate Zeitreihen? Wenn es multivariat ist, haben Sie andere Variablen? Zeigen diese Variablen ein saisonales Verhalten? In diesem Fall ist das Hinzufügen einer Dummy-Variablen nicht erforderlich. Können Sie diese zusätzlichen Informationen bereitstellen?
Prognose
Ich habe meine Frage bearbeitet. Könnten Sie bitte eine Lösung nennen? Danke
Arushi
Ich stimme vollkommen mit @IrishStat überein, wir werden nicht annehmen, Zeitreihenmodelle zu ignorieren, ein ziemlich gutes Modell, das mehrere Saisonalitäten erfasst. trend, simult.its exklusiv in R.Sie können if forecast () package verwenden.
Karthi V

Antworten:

10

@Irishstat deckte so ziemlich alles ab, was ich sagen wollte, aber ich würde mit meiner eigenen persönlichen Erfahrung bei der Modellierung dieser Daten mit Zeitreihenregression und OLS-Regression antworten.

Wenn es sich um tägliche Daten handelt, würde ich Folgendes tun:

Erstellen Sie eine Dummy-Variable für verschiedene Saisonalitäten:

  • Erstellen Sie 6 Dummy-Variablen, um die Saisonalität des Wochentags zu erfassen.
  • Erstellen Sie 30 Dummy-Variablen, um die Saisonalität des Tages des Monats zu erfassen
  • Um den Monat des Jahres zu erfassen, erstellen Sie 11 Dummy-Variablen.

Erstellen Sie eine Dummy-Variable für Trendvariablen:

  • Wenn die Zeitreihe einen linearen Trend aufweist, fügen Sie eine Zeittrendvariable hinzu.

  • Wenn die Zeitreihe einen nichtlinearen Trend aufweist, fügen Sie eine nichtlineare Zeittrendvariable hinzu, z. B. quadratisch / kubisch / log

Unabhängige Variablen hinzufügen Variablen

  • Da es sich um Zeitreihendaten handelt, sollten die Vor- und Nachlaufeffekte unabhängiger Varibalen berücksichtigt werden. Wenn Sie in Ihrem Beispiel beispielsweise die Preispunkt-Werbeflagge erwähnen, hat dies möglicherweise keine unmittelbare Auswirkung auf Ihre Antwort, dh, es kann zu Verzögerungen und einer abnehmenden / dauerhaften Auswirkung kommen. Wenn Sie beispielsweise heute eine Aktion durchführen, können Sie heute zwar einen Umsatzanstieg verzeichnen, der Effekt der Aktion lässt jedoch nach einigen Tagen nach. Es gibt keine einfache Möglichkeit, dies mit multipler Regression zu modellieren. Sie sollten eine parsimonoische Übertragungsfunktionsmodellierung verwenden, die alle Arten von Vor- und Nachlaufeffekten verarbeiten kann. Sehen Sie sich dieses Beispiel an, das ich zuvor gepostet habe, bei dem es eine Intervention gibt (in Ihrem Fall Preispunkt) und es einen abrupten Anstieg gibt, gefolgt von einem abnehmenden Effekt. Allerdings, wenn Sie habena priori Wissen über den Lead- und Lag-Effekt, erstellen Sie zusätzliche Variablen in Ihrem Fall, Dummy-Variablen vor und nach dem Preis und (Ja / Nein) Promotion-Änderung.

  • Sie müssten auch Variablen für bewegliche Feiertage hinzufügen. Irishstat hat beispielsweise darauf hingewiesen, dass Sie Ostern / Erntedankfest (in den USA) hinzufügen möchten, bei denen es sich um bewegliche Feiertage handelt. Feiertage, bei denen es sich um feste Daten handelt, werden automatisch berücksichtigt, wenn Sie ein Dummy-Codierungsschema zur Erfassung der Saisonalität verwenden.

  • Darüber hinaus müssen Sie Ausreißer wie Additiv / Puls (einmaliges Ereignis) oder Pegelverschiebung (permanente Verschiebung) identifizieren und als Regressoren hinzufügen. Die Identifizierung von Ausreißern in mehrfacher Regression für Zeitreihendaten ist nahezu unmöglich. Sie benötigen Methoden zur Erkennung von Zeitreihenausreißern wie das Tsay- Verfahren oder das Chen- und Liu- Verfahren, das in Software wie AUTOBOX, SPSS, SAS oder dem tsoutlierPaket in R enthalten ist.

Potenzielle Probleme:

Im Folgenden werden die Probleme aufgeführt, die auftreten können, wenn Sie Zeitreihendaten mithilfe der OLS-Mehrfachregression modellieren.

  • Fehler können automatisch korreliert werden. Siehe diese schöne Website und diese Website , auf der dieses Problem erläutert wird. Eine Möglichkeit, dies zu vermeiden, ist die Verwendung des GLS- Ansatzes (Generalized Least Squares) oder des ARIMAX- Ansatzes im Vergleich zur OLS-Mehrfachregression, bei der Sie die Autokorrelation korrigieren können.
  • 6+30+11=47
  • Wenn Sie Dummy-Variablen verwenden, gehen Sie davon aus, dass Ihre Saisonalität deterministisch ist, dh sich nicht mit der Zeit ändert. Da Sie nur 3 Jahre Daten haben, würde ich mich nicht darum kümmern, aber es lohnt sich trotzdem, die Reihen zu zeichnen und zu prüfen, ob sich die Saisonalität nicht ändert.

Die Verwendung der multiplen Regression hat noch viele weitere Nachteile. Wenn die Vorhersage für Sie wichtiger ist, würde ich Daten für mindestens 6 Monate bereithalten und die Vorhersagefähigkeit Ihrer multiplen Regression testen. Wenn Ihr Hauptziel darin besteht, die Korrelation zwischen unabhängigen Variablen zu erklären, würde ich bei der Verwendung der multiplen Regression vorsichtig sein und stattdessen einen Zeitreihenansatz wie ARIMAX / GLS verwenden.

Wenn Sie interessiert sind, können Sie sich für die Übertragungsfunktion und die dynamische Regressionsmodellierung auf den hervorragenden Text von Pankratz beziehen . Für allgemeine Zeitreihenvorhersagen verweisen wir auf Makridakis et al . Ein guter Referenztext wäre auch von Diebold für die auf Regressionen und Zeitreihen basierende Vorhersage.

Prognostiker
quelle
Sehr schöne Zusammenfassung, ABER ich möchte hinzufügen, dass Sie zusätzlich zu möglichen Wochenendeffekten, die ich als sehr wichtig empfunden habe, bestimmte Auswirkungen auf die Woche des Monats und auf den Tag des Monats ignoriert haben. Darüber hinaus sind Vor- und Nachwirkungseffekte nicht zu vernachlässigen. Berücksichtigen Sie die Aktivität zu Ostern und zu anderen wichtigen Feiertagen / Ereignissen. Oft gibt es ein individuelles Reaktionsmuster, das die Einbeziehung einer LEAD-Spezifikation erfordert. Sie sollten auch beachten, dass sich Parameter häufig im Laufe der Zeit ändern können und dass die Annahme der Konstanz von Parametern validiert werden muss.
IrishStat
Danke @Irishstat. Du hast recht. Ich habe die bewegten Feiertage und ihre Vor- und Nachlaufeffekte vergessen.
Prognose
2

Was Sie brauchen, ist ein Modell, das tägliche Effekte, wöchentliche Effekte, monatliche Effekte, Woche des Monats-Effekte, Tag-des-Monats-Effekte, Vorlauf- und Verzögerungseffekte der Feiertage umfasst, nicht spezifizierte, aber empirisch identifizierbare Pegel- / Stufenverschiebungen. lokale Zeittrends, Änderungen von saisonalen Impulsen und Impulsen unter Einbeziehung der ARIMA-Struktur und möglicherweise Umgang mit Änderungen von Parametern und Fehlervarianz über die Zeit. Dies wird als Übertragungsfunktion bezeichnet und kann leicht als multiple lineare Regression angepasst werden (ABER NICHT PARSIMONIOUS).

Im Einzelnen würde ein täglicher Indikator 6 Prädiktoren benötigen. Im Allgemeinen muss man sorgfältig orchestrieren (identifizieren), welche Art von Prädiktoren benötigt werden. Wenn Sie viel Zeit haben, können Sie mit einigen der Strukturen experimentieren, die ich erwähnt habe. Alternativ benötigen Sie möglicherweise eine fortgeschrittene Software / Beratung, um Ihr Problem in Ihrem Leben zu lösen.

IrishStat
quelle