Zeitreihen · Verständlich erklärt

Scheinkorrelation verständlich erklärt

Zwei Kurven, die beide über die Zeit wandern, etwa der Lagerbestand an einem Standort und der Auftragseingang an einem anderen, laufen eine Weile im Gleichschritt, obwohl sie nichts miteinander zu tun haben. Ein statistischer Test, der prüfen soll, ob zwei Kurven zusammenhängen, meldet dann trotzdem einen Zusammenhang. Diese Seite zeigt, warum, und was dagegen hilft, erst ohne Formeln, dann für Fachleute.

Zuletzt aktualisiert:

Teil 1 · Für Einsteiger

Ein Wort unbekannt? Das Begriffsverzeichnis erklärt es in wenigen Sätzen.

Zwei Kurven im Gleichschritt, ohne Zusammenhang

Stellen Sie sich zwei Wochenreihen vor: den Lagerbestand an Standort A und den Auftragseingang an Standort B. Beide wandern: Der Bestand dieser Woche ist der Bestand der Vorwoche plus eine zufällige Änderung, und nichts zieht ihn zu einem festen Wert zurück. Beim Auftragseingang ist es ebenso. Legt man die Kurven übereinander, steigen über viele Wochen beide, dann fallen beide, und es sieht aus, als hinge das eine am anderen. Dabei haben die beiden Standorte nichts miteinander zu tun, jede Reihe folgt ihrem eigenen Zufall.

Der Grund: Jede Woche hängt an der vorigen. Liegt der Bestand heute hoch, liegt er nächste Woche vermutlich noch hoch, und er bleibt eine Zeit lang oberhalb oder unterhalb seines Durchschnitts. Fachleute sagen, eine solche Reihe hat ein Gedächtnis. Zwei Reihen mit Gedächtnis laufen rein zufällig eine Weile in dieselbe Richtung, und wer den Gleichlauf misst, misst genau diesen Zufall. Das Ergebnis heißt Scheinkorrelation: ein gemessener Gleichlauf ohne echten Zusammenhang. Zu dieser Seite gehört ein Programm zum Ausprobieren, die Demo (Link am Ende dieses Teils). Sie simuliert Reihen ohne jeden Zusammenhang und zählt, wie oft der Test sich trotzdem täuscht.

Vier Arten von Reihen in der Demo

  • Ohne Gedächtnis: Jede Woche schwankt rein zufällig um denselben Durchschnitt, unabhängig von der Vorwoche.
  • Mit Rückkehr zum Durchschnitt: Jede Woche hängt an der vorigen, aber die Reihe wird langsam zum Durchschnitt zurückgezogen.
  • Frei wandernd: wie der Bestand oben, Vorwoche plus zufällige Änderung, ohne Rückkehr.
  • Mit Trend: Die Reihe wächst Woche für Woche um einen festen Betrag, dazu kommen zufällige Schwankungen.

Warum der übliche Test sich täuscht

Der Test fragt: Wie ungewöhnlich ist ein so starker Gleichlauf, wenn die Reihen nichts verbindet? Er rechnet dabei, als stünde jede Woche für einen neuen, unabhängigen Hinweis. Bei Reihen mit Gedächtnis ähnelt eine Woche aber der vorigen. Das ist wie eine Umfrage, bei der viele Antworten von derselben Person stammen: Die Zahl der Antworten täuscht mehr Sicherheit vor, als die Befragten hergeben. Der Test hält deshalb Zufall zu schnell für einen Zusammenhang.

Mehr Daten beheben das nicht. In der Demo wird der Zufalls-Gleichlauf bei Reihen ohne Gedächtnis kleiner, je länger man beobachtet. Bei frei wandernden Reihen schrumpft er nicht, und der Test meldet bei längeren Reihen häufiger einen Zusammenhang als bei kürzeren. Bei zwei Reihen mit Trend, die beide über die Jahre wachsen, jede aus eigenem Grund, meldet der Test bei den längeren Reihen der Demo in allen Läufen einen Zusammenhang.

Was hilft?

Die Demo prüft vier Gegenmittel. In der Demo hilft jedes bei einer Art von Reihe und versagt bei einer anderen:

  • Änderungen statt Stände vergleichen (Fachwort: Differenzieren): Man rechnet für jede Woche „Bestand dieser Woche minus Bestand der Vorwoche“ und vergleicht diese Änderungen. Bei frei wandernden Reihen haben diese Änderungen kein Gedächtnis, deshalb hilft das dort in der Demo. Bei Reihen ohne Gedächtnis und mit Trend schadet es: Der Test meldet dann öfter einen Zusammenhang, als er sollte.
  • Den Trend abziehen: Man legt durch jede Reihe die gerade Grundlinie ihres Wachstums und vergleicht nur die Abstände der Wochenwerte davon. Das hilft in der Demo nur bei Reihen mit Trend, nicht bei frei wandernden.
  • Weniger Wochen zählen: Je stärker eine Woche der vorigen gleicht, desto weniger zählt sie als eigener Hinweis, so wie bei der Umfrage oben. In der Demo hilft das bei Reihen ohne Trend, aber nicht beim Trend. Hängen die Änderungen beider Reihen wirklich zusammen, ist das Mittel zu vorsichtig und übersieht den Zusammenhang.
  • Eine Reihe gegen die andere verschieben: Man schiebt die eine Reihe um einige Wochen gegen die andere und misst den Gleichlauf neu. In verschobenen Lagen kann kein echter Zusammenhang bestehen, ihr Gleichlauf ist reiner Zufall. Ist der Gleichlauf in der richtigen Lage nicht größer, ist er vermutlich auch Zufall. In der Demo hilft das bei Reihen mit Rückkehr zum Durchschnitt, solange diese Rückkehr nicht allzu langsam ist, aber nicht bei frei wandernden Reihen und nicht beim Trend.

Daneben gibt es eine Warnregel, die kein Test ist, nur ein Hinweis: Sie legt eine Gerade, die beide Kurven am besten verbindet, und schaut, ob die Abstände der Wochenwerte von ihr selbst wieder wandern. In der Demo warnt sie bei frei wandernden Reihen, je länger sie beobachtet werden, desto öfter, und beim Trend schweigt sie.

Und wenn der Zusammenhang echt ist?

Der übliche Test kann Schein und Wirklichkeit nicht auseinanderhalten: Bei zwei frei wandernden Reihen meldet er in der Demo mit und ohne echten Zusammenhang ungefähr gleich oft einen. Vergleicht man die Wochenänderungen, bleibt der Gleichlauf in der Demo nur dort bestehen, wo die Änderungen der beiden Reihen wirklich zusammenhängen. Welche Reihe die andere bewegt, sagt auch ein echter Zusammenhang nicht.

Wie ernst ist das Modell zu nehmen?

Alle Reihen der Demo sind erfunden und folgen den vier Arten oben; wie häufig diese in echten Standortdaten vorkommen, zeigt die Demo nicht.

Woran Sie es im Betrieb merken: Zwei Kurven sehen auffällig ähnlich aus, aber Sie finden keinen Grund, warum der eine Standort den anderen beeinflussen sollte. Legen Sie dann neben die beiden Kurven die Wochenänderungen beider Reihen (jeweils Wert dieser Woche minus Wert der Vorwoche) und sehen Sie nach, ob auch diese im Gleichschritt laufen. Wenn nicht, stützen Sie Ihre Entscheidung nicht auf den Gleichlauf der Kurven. Laufen auch die Änderungen im Gleichschritt, spricht das bei frei wandernden Reihen eher für einen echten Zusammenhang.

Hinweis: Alle Demos rechnen mit synthetischen oder frei verfügbaren Beispieldaten und laufen auf einem externen Anbieter (Datenschutz). Bitte geben Sie darin keine vertraulichen oder personenbezogenen Daten ein. Die Ergebnisse gelten für die jeweilige Demo-Instanz und lassen sich nicht ungeprüft auf reale Fälle übertragen; für darauf gestützte Entscheidungen übernehme ich keine Gewähr.

Teil 2 · Für Fachleute

Modell und Annahmen

Dieser Teil ist eigenständig lesbar. Er fasst die formale Beschreibung der Demo zusammen; die vollständige Fassung steht im Expander „📐 Mathematische Formulierung“ der Demo.

  • Modell: zwei Reihen der Länge \(T\) (Wochen) mit demselben Prozess, aber eigenen Zufallszahlen (SplitMix64): weißes Rauschen, AR(1) mit stationärem Start, Irrfahrt (\(x_0 = \varepsilon_0\)) und Trend plus Rauschen (Steigung \(b\) = 0,05 je Woche im Raster). Die Innovationen beider Reihen haben die Korrelation \(\rho\) (0: unabhängig); dazu der Sonderfall gemeinsame Irrfahrt \(y = x + \varepsilon\).
  • Fünf Verfahren auf demselben Paar: naiver t-Test (\(T-2\) Freiheitsgrade), Test auf die Differenzen \(\Delta x_t = x_t - x_{t-1}\) (\(T-1\) Beobachtungen), Test nach Abzug der Trendgeraden, t-Test mit effektiver Stichprobengröße und zirkuläres Verschiebungstest über alle \(T\) Verschiebungen per FFT. Dazu die Warnregel \(R^2 > \mathrm{DW}\) (Granger–Newbold) als Hinweis, nicht als Test.
  • Raster: Fehlalarm und Verteilung von \(r\) in 30 Zellen (6 Prozesse, \(T\) = 26, 52, 104, 260, 520, je 4 · 1 000 Paare); echter Zusammenhang in 30 weiteren Zellen (Irrfahrten, AR(1) 0,9 und Trend mit \(\rho\) = 0, 0,3, 0,6 sowie die gemeinsame Irrfahrt, \(T\) = 52, 104, 260). Vier Zufalls-Seeds je Zelle (101 bis 104).

Die Formeln

Prozesse. Beide Reihen folgen demselben Muster, mit eigenen Zufallsstößen \(\varepsilon_t\):

\[x_t = \varepsilon_t \ \ (\text{weißes Rauschen}), \qquad x_t = \varphi\, x_{t-1} + \varepsilon_t \ \ (\text{AR}(1)), \qquad x_t = x_{t-1} + \varepsilon_t \ \ (\text{Irrfahrt}), \qquad x_t = b\,t + \varepsilon_t \ \ (\text{Trend})\]

Naiver Test. Er rechnet, als wären die \(T\) Beobachtungen unabhängig:

\[t = r\sqrt{\frac{T-2}{1-r^2}} \sim t_{T-2} \ \text{ (nur bei unabhängigen Beobachtungen)}\]

Varianz von \(r\) bei unabhängigen AR(1)-Reihen gleichen \(\varphi\) und langem \(T\), und die daraus folgende effektive Stichprobengröße:

\[T\cdot\operatorname{Var}(r) \to \frac{1+\varphi^2}{1-\varphi^2}, \qquad T_{\mathrm{eff}} = T\,\frac{1-\varphi^2}{1+\varphi^2}\]

Schätzung mit den Lag-1-Autokorrelationen (nach oben durch \(T\) begrenzt, mindestens 3) und der \(t\)-Test mit \(T_{\mathrm{eff}}-2\) Freiheitsgraden:

\[T_{\mathrm{eff}} = T\,\frac{1 - r_{1,x}\,r_{1,y}}{1 + r_{1,x}\,r_{1,y}}\]

Zirkuläres Verschiebungstest. Mit der um \(s\) Wochen verschobenen Reihe \(y^{(s)}_t = y_{(t+s) \bmod T}\) ist der p-Wert der Anteil der Verschiebungen, die mindestens so stark korrelieren wie die echte Lage:

\[p = \frac{1}{T}\,\#\bigl\{ s \in \{0,\dots,T-1\} : \lvert r(x, y^{(s)})\rvert \ge \lvert r(x,y)\rvert \bigr\}\]

Warnregel (Granger–Newbold). Mit den Residuen \(u_t\) der Regression \(y \sim x\) gilt:

\[\mathrm{DW} = \frac{\sum_{t=2}^{T}(u_t - u_{t-1})^2}{\sum_{t=1}^{T} u_t^2}, \qquad \text{Warnung, wenn } R^2 = r^2 > \mathrm{DW}\]

Differenzieren und Trendbereinigung sind \(\Delta x_t = x_t - x_{t-1}\) bzw. die Residuen der Regression auf die Zeit; der Test läuft dann auf den transformierten Reihen.

Befunde

Alle Zahlen stammen aus der README der Demo; jede Messzahl steht in deren Tests (tests/test_claims.py: Raster-Werte gegen die JSON-Datei, Live-Werte über dieselben Funktionen wie in der App). Die Reihen sind simuliert und unabhängig, sofern nicht ausdrücklich ein \(\rho\) gesetzt ist. Angegeben sind Anteile verworfener Unabhängigkeit bei 5 % Niveau, in Prozent der 4 000 Läufe je Zelle; die Streuung über die Zufalls-Seeds liegt in jeder Zelle bei höchstens 2,6 Punkten. Laufzeit- und Mutationsangaben sind in den Tests nicht erfasst.

Fehlalarm des naiven Tests bei unabhängigen Reihen (Experiment 1, in Prozent):

ProzessT = 26T = 52T = 104T = 260T = 520
weißes Rauschen5,04,94,84,95,0
AR(1) 0,511,213,012,412,712,6
AR(1) 0,938,947,650,451,353,0
AR(1) 0,9952,363,274,179,783,0
Irrfahrt52,567,776,186,589,4
Trend + Rauschen8,979,3100,0100,0100,0

Beim Trend gilt das für eine Steigung von \(b\) = 0,05 je Woche und Rauschen mit Standardabweichung 1; bei kleinerer Steigung kippt es später, bei größerer früher.

Gegenmittel bei unabhängigen Reihen, \(T\) = 104 (Experiment 3; Anteil verworfen bzw. Anteil mit \(R^2 > \mathrm{DW}\), in Prozent):

ProzessnaivDifferenzierenTrend wegn_effVerschiebungR² > DW
weißes Rauschen4,811,35,14,84,90,0
AR(1) 0,512,47,812,45,15,00,0
AR(1) 0,950,45,147,34,75,51,8
AR(1) 0,9974,15,065,24,016,048,9
Irrfahrt76,14,464,84,622,055,9
Trend + Rauschen100,010,35,0100,099,20,0

Echter Zusammenhang, \(T\) = 104 (Experiment 4; Innovationen mit Korrelation \(\rho\), Anteil verworfen, in Prozent):

Szenario, ρnaivDifferenzierenTrend wegn_effVerschiebungR² > DW
zwei Irrfahrten, Zuwächse korreliert, ρ = 076,15,266,95,022,054,6
zwei Irrfahrten, ρ = 0,379,488,274,28,629,361,1
zwei Irrfahrten, ρ = 0,689,0100,091,726,854,478,1
zwei AR(1) 0,9, Innovationen korreliert, ρ = 051,25,248,94,75,21,9
zwei AR(1) 0,9, ρ = 0,372,087,971,220,426,213,9
zwei AR(1) 0,9, ρ = 0,696,7100,097,373,277,065,0
gemeinsamer Trend, Rauschen korreliert, ρ = 0100,010,65,0100,099,60,0
gemeinsamer Trend, ρ = 0,3100,082,787,9100,0100,00,0
gemeinsamer Trend, ρ = 0,6100,0100,0100,0100,0100,00,0
gemeinsame Irrfahrt, y = x + Rauschen100,0100,0100,098,0100,00,0

Einzelbefunde:

FrageBefund
Wie groß wird r? (Experiment 2)Bei der Irrfahrt schrumpft r nicht mit T: Streuung von r 0,489 / 0,493 / 0,488 / 0,484 / 0,484 (T = 26 bis 520), mittleres |r| 0,417 bis 0,424, in 38,4 bis 40,4 % der Paare ist |r| > 0,5, auch bei 520 Wochen. Bei weißem Rauschen sinkt die Streuung wie 1/√T: 0,200 / 0,139 / 0,099 / 0,062 / 0,044. Live (2 000 Paare, T = 104): bei der Irrfahrt liegt |r| in 76,7 % der Paare über der Schwelle 0,193 des naiven Tests, bei weißem Rauschen in 5,4 %.
Hilft Differenzieren? (Experiment 3)Bei Irrfahrten und AR(1) ab 0,9: ja (4,4 bis 5,1 % bei T = 104, über alle Längen 4,4 bis 5,6 %); bei weißem Rauschen und bei Trend plus Rauschen: nein, Überdifferenzieren hebt den Fehlalarm auf 10,4 bis 11,8 % bzw. 10,2 bis 10,8 % (alle fünf Längen); AR(1) 0,5: 6,7 bis 7,8 %. Bei Irrfahrten sind die Differenzen unabhängig, der Test hält theoretisch 5 %; die README führt die Abweichung zwischen 4,4 % in Experiment 3 und 5,2 % in Experiment 4 auf Messrauschen zurück (Standardfehler etwa 0,35 Punkte je Zelle).
Hilft Trendbereinigung?Nur beim Trend: 5,0 % bei T = 104; die Irrfahrt bleibt bei 64,8 % (T = 104) und 84,2 % bei T = 520, AR(1) 0,9 bei 47,3 %.
Hilft n_eff?Bei Rauschen, AR(1) und Irrfahrt ja (4,0 bis 5,1 % bei T = 104), beim Trend nein (100,0 %), und bei echtem Zusammenhang zu vorsichtig: bei Irrfahrten mit ρ = 0,3 nur 8,6 %, bei AR(1) 0,9 nur 20,4 % (Differenzieren: 88,2 und 87,9 %).
Hilft das Verschiebungstest?Nur bei kurzem Gedächtnis: 4,9 bis 5,5 % bei Rauschen, AR(1) 0,5 und 0,9; bei AR(1) 0,99 16,0 %, bei der Irrfahrt 22,0 %, beim Trend 99,2 %.
Erkennt die Warnregel die Scheinregression?Mit wachsender Länge besser, beim Trend gar nicht: bei unabhängigen Irrfahrten warnt R² > DW in 10,3 / 34,3 / 55,9 / 74,1 / 81,5 % der Läufe (T = 26 bis 520), bei Trend plus Rauschen und bei weißem Rauschen in 0,0 % der Läufe (4 000 je Zelle); auch bei echter Niveaubeziehung y = x + Rauschen in 0,0 %.
Sieht der naive Test den Unterschied? (Experiment 4)Nein: bei zwei Irrfahrten verwirft er ohne Zusammenhang in 76,1 %, mit ρ = 0,3 in 79,4 %; beim gemeinsamen Trend in beiden Fällen 100,0 %. Differenzieren trennt: 5,2 % gegen 88,2 % bei Irrfahrten, 5,2 % gegen 87,9 % bei AR(1) 0,9.
Stimmt die Varianzformel? (Experiment 5, live)T · Var(r) gegen (1 + φ²)/(1 − φ²) für T = 104 / 520: φ = 0: 1,02 / 0,98 (Formel 1,00); φ = 0,5: 1,60 / 1,65 (1,67); φ = 0,9: 7,80 / 9,34 (9,53); φ = 0,99: 20,59 / 58,55 (99,50). Die Formel gilt erst, wenn T deutlich größer ist als 1/(1 − φ): bei T = 10/(1 − φ) (φ = 0,9, T = 104) liegt die Messung noch 18 % unter der Formel, bei T = 5/(1 − φ) (φ = 0,99, T = 520) noch 41 %, und bei φ = 0,99 und T = 104 liegt sie fast um den Faktor 5 daneben.
Handwerte (Mini-Instanz der Tests)x = (1, 2, 3, 4, 5), y = (2, 4, 5, 4, 5): r = 6/√60 = 0,7746, DW = 4,84/2,4 = 2,0167, R² = 0,6 (keine Warnung); Lag-1-Autokorrelation von x = 0,4; Differenzen von x = (1, 1, 1, 1).

Grenzen

  • Die vier Prozesse sind Beispiele. Saison (gemeinsamer Kalender), Strukturbrüche und sehr lange Gedächtnisse sind nicht gezeigt; wie häufig die Prozesse in echten Standort-Reihen sind, zeigt die Demo nicht. Alle Reihen sind simuliert.
  • n_eff ist die Näherung mit den Lag-1-Autokorrelationen beider Reihen (nach oben durch \(T\) begrenzt, mindestens 3); sie ersetzt keine vollständige Schätzung der Kovarianzstruktur (HAC-Standardfehler, Block-Bootstrap) und ist hier nicht darauf geprüft.
  • Das Verschiebungstest vergleicht \(r\) mit allen \(T\) zyklischen Verschiebungen; für Reihen mit Trend oder Irrfahrt ist die Verteilung der Verschiebungen nicht die richtige Nullverteilung (die Zelle zeigt es), und bei \(T\) = 26 ist der kleinste p-Wert 1/26.
  • Die Warnregel \(R^2 > \mathrm{DW}\) ist ein Hinweis, kein Test; die Schwelle stammt aus der Literatur der Scheinregression und wird hier nur gemessen.
  • Echter Zusammenhang ist hier immer eine Korrelation der Zufallsstöße (oder \(y = x + \varepsilon\)); ob ein Zusammenhang kausal ist, sagt kein Verfahren.
  • Kointegration (gemeinsame Irrfahrt mit Anpassungstempo) wird nicht getestet; die Demo zeigt nur, dass der gemeinsame Gleichlauf in den Verfahren sichtbar ist (y = x + Rauschen: 98,0 bis 100,0 %).
  • Die Grenzverteilung von \(r\) bei Irrfahrten wird nur gemessen, nicht hergeleitet.

Quellen

Literatur wurde für diese Seite weder nachgeschlagen noch genannt: Die README der Demo weist keine Literaturangaben aus. Die Formeln sind dort durch unabhängige Rechenwege (Orakel-Tests) und die Messungen gestützt.