So berechnen Sie die Autokorrelation in R

Von Fabian
Kategorie: R
Lesezeit: 2 Minuten

Die Autokorrelation misst den Ähnlichkeitsgrad zwischen einer Zeitreihe und einer verzögerten Version von sich selbst über aufeinanderfolgende Zeitintervalle.

Es wird manchmal auch als "serielle Korrelation" oder "verzögerte Korrelation" bezeichnet, da es die Beziehung zwischen den aktuellen Werten einer Variablen und ihren historischen Werten misst.

Wenn die Autokorrelation in einer Zeitreihe hoch ist, können zukünftige Werte leicht vorhergesagt werden, indem einfach auf vergangene Werte Bezug genommen wird.

So berechnen Sie die Autokorrelation in R

Angenommen, wir haben die folgenden Zeitreihen in R, die den Wert einer bestimmten Variablen in 15 verschiedenen Zeiträumen anzeigen:

#Daten definieren
x <- c(22, 24, 25, 25, 28, 29, 34, 37, 40, 44, 51, 48, 47, 50, 51)

Wir können die Autokorrelation für jede Verzögerung in der Zeitreihe mithilfe der Funktion acf() aus der Bibliothek tseries berechnen:

library(tseries)

#Autokorrelationen berechnen
acf(x, pl=FALSE)

     0      1      2      3      4      5      6      7      8      9     10 
 1.000  0.832  0.656  0.491  0.279  0.031 -0.165 -0.304 -0.401 -0.458 -0.450 
    11 
-0.369 

Die Ausgabe kann folgendermaßen interpretiert werden:

  • Die Autokorrelation bei Verzögerung 0 ist 1.
  • Die Autokorrelation bei Verzögerung 1 beträgt 0,832.
  • Die Autokorrelation bei Verzögerung 2 beträgt 0,656.
  • Die Autokorrelation bei Verzögerung 3 beträgt 0,491.

Usw.

Wir können auch die Anzahl der Verzögerungen angeben, die mit dem Argument lag angezeigt werden sollen:

#Autokorrelationen bis zu lag = 5 berechnen
acf(x, lag=5, pl=FALSE)

Autocorrelations of series 'x', by lag

    0     1     2     3     4     5 
1.000 0.832 0.656 0.491 0.279 0.031

So zeichnen Sie die Autokorrelationsfunktion in R

Wir können die Autokorrelationsfunktion für eine Zeitreihe in R darstellen, indem wir einfach das Argument pl = FALSE nicht verwenden:

#Autokorrelationsfunktion plotten
acf(x)

Autokorrelation in R

Die x-Achse zeigt die Anzahl der Verzögerungen an und die y-Achse zeigt die Autokorrelation bei dieser Anzahl von Verzögerungen an. Standardmäßig beginnt der Plot bei Verzögerung = 0 und die Autokorrelation ist bei Verzögerung = 0 immer 1.

Sie können auch einen anderen Titel für den Plot angeben, indem Sie das main Argument verwenden:

#Autokorrelationsfunktion mit benutzerdefiniertem Titel plotten
acf(x, main='Autocorrelation by Lag')

Autokorrelationsdiagramm in R

Zusätzliche Ressourcen

So berechnen Sie die Autokorrelation in Python
So berechnen Sie die Autokorrelation in Excel

Statistik: Der Weg zur Datenanalyse

* Amazon Affiliate Link


Das könnte Sie auch interessieren: