Estou tentando descobrir como o R calcula a autocorrelação lag-k (aparentemente, é a mesma fórmula usada pelo Minitab e SAS), para que eu possa compará-lo ao uso da função CORREL do Excel aplicada à série e sua versão com atraso k. R e Excel (usando CORREL) fornecem valores de autocorrelação ligeiramente diferentes.
Eu também estaria interessado em descobrir se um cálculo é mais correto que o outro.
r
sas
autocorrelation
excel
Galit Shmueli
fonte
fonte
R
A fórmula de é analisada e explicada em stats.stackexchange.com/questions/81754/… .Respostas:
A equação exata é dada em: Venables, WN e Ripley, BD (2002) Modern Applied Statistics with S. Fourth Edition. Springer-Verlag. Vou dar um exemplo:
E assim por diante (por exemplo,
res[1:47]
eres[4:50]
para o atraso 3).fonte
A maneira ingênua de calcular a correlação automática (e possivelmente o que o Excel usa) é criar 2 cópias do vetor e remover o 1º n elementos da primeira cópia e os últimos n elementos da segunda cópia (onde n é o atraso que você estão computando de). Em seguida, passe esses 2 vetores para a função para calcular a correlação. Este método está OK e dará uma resposta razoável, mas ignora o fato de que os 2 vetores comparados são realmente medidas da mesma coisa.
A versão aprimorada (como mostrada por Wolfgang) é uma função semelhante à correlação regular, exceto pelo fato de usar o vetor inteiro para calcular a média e a variância.
fonte