Pular para o conteúdo principal

Autocorrelação em R

Pratique autocorrelação em R usando o material do curso Introduction to Time Series Analysis da DataCamp.
Atualizado 17 de set. de 2026  · 6 min lido

Explorar com IA

ChatGPTClaudePerplexity

Se você quer fazer nosso curso Introduction to Time Series Analysis in R, aqui está o link.

Calculando autocorrelações

Autocorrelações, ou correlações defasadas, são usadas para avaliar se uma série temporal depende do seu passado. Para uma série temporal x de comprimento n, consideramos os n-1 pares de observações separados por uma unidade de tempo. O primeiro par é (x[2],x[1]), o próximo é (x[3],x[2]). Cada par tem a forma (x[t],x[t-1]), onde t é o índice da observação, variando de 2 até n neste caso. A autocorrelação de defasagem 1 de x pode ser estimada como a correlação amostral desses pares (x[t], x[t-1]).

De modo geral, podemos criar manualmente esses pares de observações. Primeiro, crie dois vetores, x_t0 e x_t1, cada um com comprimento n-1, de forma que as linhas correspondam aos pares (x[t], x[t-1]). Depois, aplique a função cor() para estimar a autocorrelação de defasagem 1.

Felizmente, o comando acf() oferece um atalho. Aplicar acf(..., lag.max = 1, plot = FALSE) a uma série x calcula automaticamente a autocorrelação de defasagem 1.

Por fim, observe que as duas estimativas diferem ligeiramente porque usam escalas diferentes no cálculo da covariância amostral, 1/(n-1) versus 1/n. Embora a segunda gere uma estimativa viesada, ela é preferida em análise de séries temporais, e as estimativas de autocorrelação resultantes diferem apenas por um fator de (n-1)/n.

Neste exercício, você vai praticar tanto o cálculo manual quanto o automático da autocorrelação de defasagem 1. A série temporal x e seu comprimento n (150) já foram carregados. A série está no gráfico à direita.

Instruções

  • Crie dois vetores, x_t0 e x_t1, cada um com comprimento n-1, de forma que as linhas correspondam aos pares (x[t], x[t-1]).
  • Confirme que x_t0 e x_t1 são pares (x[t], x[t-1]) usando o código pré-escrito.
  • Use plot() para ver o gráfico de dispersão de x_t0 e x_t1.
  • Use cor() para ver a correlação entre x_t0 e x_t1.
  • Use acf() com x para calcular automaticamente a autocorrelação de defasagem 1. Defina o argumento lag.max como 1 para produzir uma única defasagem e defina o argumento plot como FALSE.
  • Confirme que o fator de diferença é (n-1)/n usando o código pré-escrito.
eyJsYW5ndWFnZSI6InIgIiwicHJlX2V4ZXJjaXNlX2NvZGUiOiJcbiMgcGVj XG5zZXQuc2VlZCg5ODc2KVxueCA8LSBhcmltYS5zaW0obGlzdChhcj0wLjc1 KSxuPTE1MClcbm4gPC0gbGVuZ3RoKHgpIDsgblxudHMucGxvdCh4KSIsInNh bXBsZSI6IlxuIyBEZWZpbmUgeF90MCBhcyB4Wy0xXVxueF90MCA8LSBcblxu IyBEZWZpbmUgeF90MSBhcyB4Wy1uXVxueF90MSA8LSBcblxuIyBDb25maXJt IHRoYXQgeF90MCBhbmQgeF90MSBhcmUgKHhbdF0sIHhbdC0xXSkgcGFpcnMg IFxuaGVhZChjYmluZCh4X3QwLCB4X3QxKSlcbiAgXG4jIFBsb3QgeF90MCBh bmQgeF90MVxucGxvdChfX18sIF9fXylcblxuIyBWaWV3IHRoZSBjb3JyZWxh dGlvbiBiZXR3ZWVuIHhfdDAgYW5kIHhfdDFcbmNvcihfX18sIF9fXylcblxu IyBVc2UgYWNmIHdpdGggeFxuYWNmKF9fXywgbGFnLm1heCA9IF9fXywgcGxv dCA9IF9fXylcblxuIyBDb25maXJtIHRoYXQgZGlmZmVyZW5jZSBmYWN0b3Ig aXMgKG4tMSkvblxuY29yKHhfdDEsIHhfdDApICogKG4tMSkvbiIsInNvbHV0 aW9uIjoiXG4jIERlZmluZSB4X3QwIGFzIHhbLTFdXG54X3QwIDwtIHhbLTFd IFxuXG4jIERlZmluZSB4X3QxIGFzIHhbLW5dXG54X3QxIDwtIHhbLW5dXG5c biMgQ29uZmlybSB0aGF0IHhfdDAgYW5kIHhfdDEgYXJlICh4W3RdLCB4W3Qt MV0pIHBhaXJzICBcbmhlYWQoY2JpbmQoeF90MCwgeF90MSkpXG4gIFxuIyBQ bG90IHhfdDAgYW5kIHhfdDFcbnBsb3QoeF90MCwgeF90MSlcblxuIyBWaWV3 IHRoZSBjb3JyZWxhdGlvbiBiZXR3ZWVuIHhfdDAgYW5kIHhfdDFcbmNvcih4 X3QwLCB4X3QxKVxuXG4jIFVzZSBhY2Ygd2l0aCB4XG5hY2YoeCwgbGFnLm1h eCA9IDEsIHBsb3QgPSBGQUxTRSlcblxuIyBDb25maXJtIHRoYXQgZGlmZmVy ZW5jZSBmYWN0b3IgaXMgKG4tMSkvbiBcbmNvcih4X3QxLCB4X3QwKSAqIChu LTEpL24iLCJzY3QiOiJcbnRlc3Rfb2JqZWN0KFwieF90MFwiKVxudGVzdF9v YmplY3QoXCJ4X3QxXCIpXG50ZXN0X2Z1bmN0aW9uKFwiaGVhZFwiKVxudGVz dF9mdW5jdGlvbihcInBsb3RcIiwgYXJncyA9IGMoXCJ4XCIsIFwieVwiKSlc bnRlc3RfZnVuY3Rpb24oXCJjb3JcIiwgYXJncyA9IGMoXCJ4XCIsIFwieVwi KSwgaW5kZXggPSAxKVxudGVzdF9mdW5jdGlvbihcImFjZlwiLCBhcmdzID0g YyhcInhcIiwgXCJsYWcubWF4XCIsIFwicGxvdFwiKSlcbnRlc3RfZnVuY3Rp b24oXCJjb3JcIiwgYXJncyA9IGMoXCJ4XCIsIFwieVwiKSwgaW5kZXggPSAy KVxudGVzdF9lcnJvcigpXG5cbnN1Y2Nlc3NfbXNnKFwiRXhjZWxlbnRlISBD b21vIHZvY2V2ZSB2ZXIsIG8gY29tYW5kIGBhY2YoKWAgJmVtZGFzaDsgw6kg dW0gYXRhbGhvIGzpdmVsIHBhcmEgY2FsY3VsYXIgYXV0b2NvcnJlbGHDp8O1 by4gTm9zIHByw6h4aW1vcyBleGVyY2nDp2lvcyB2w6lvYyBleHBsb3JhciBy ZWN1cnNvcyBkaWZlcmVuY2lhZG9zIGRlc3NlIGNvbWFuZG8uXCIpLCJoaW50 IjoiXG5PLCBjb21hbmRvIGBgYWNmKClgYCBuZXN0ZSBleGVyY2nDsyBkZXZl IHJlY2ViZXIgYXJndW1lbnRvcyBwYXJhIGBgbGFnLm1heGAgKG5lc3RlIGNh c28sIGAxcCkgZSBgYHBsb3RgYCAobmVzdGUgY2FzbywgYEZBTFNFIGApLiBT ZSBmaWNhciwIGNvbnN1bHRlIGEgZG9jdW1lbnRhY8Onw6NvIG9maWNpYWwg ZG8gY29tYW5kIGRpZ2l0YW5kbyBgYD9hY2ZgYCBubyBzZXUgY29uc29sZSBS LiJ9

Se isso fez sentido, siga para o próximo exercício! Se não, aqui vai um vídeo de visão geral.

Vídeo de visão geral sobre autocorrelação

A função de autocorrelação

É possível estimar autocorrelações em várias defasagens para avaliar melhor como uma série temporal se relaciona com seu passado. Normalmente, nos interessa mais como a série se relaciona com o passado mais recente.

A função acf(..., lag.max = ..., plot = FALSE) estima todas as autocorrelações de 0, 1, 2, ... até o valor especificado pelo argumento lag.max. No exercício anterior, você focou na autocorrelação de defasagem 1 definindo o argumento lag.max como 1.

Neste exercício, você vai explorar mais aplicações do comando acf(). Mais uma vez, a série temporal x já foi carregada e está no gráfico à direita.

Instruções

  • Use acf() para visualizar as autocorrelações da série x de 0 a 10. Defina o argumento lag.max como 10 e mantenha o argumento plot como FALSE.
  • Copie e cole a estimativa de autocorrelação (ACF) na defasagem 10.
  • Copie e cole a estimativa de autocorrelação (ACF) na defasagem 5.
eyJsYW5ndWFnZSI6InIiLCJwcmVfZXhlcmNpc2VfY29kZSI6IlxuIyBwZWNc bnNldC5zZWVkKDk4NzYpXG54ID0gYXJpbWEuc2ltKGxpc3QoYXI9MC43NSks bj0xNTApXG50cy5wbG90KHgpXG4iLCJzYW1wbGUiOiJcbiMgR2VuZXJhdGUg QUNGIGVzdGltYXRlcyBmb3IgeCB1cCB0byBsYWctMTBcbmFjZihfX18sIGxh Zy5tYXggPSBfX18sIHBsb3QgPSBGQUxTRSlcblxuIyBUeXBlIHRoZSBBQ0Yg ZXN0aW1hdGUgYXQgbGFnLTEwIFxuXG5cbiMgVHlwZSB0aGUgQUNGIGVzdGlt YXRlIGF0IGxhZy01Iiwic29sdXRpb24iOiJcbiMgR2VuZXJhdGUgQUNGIGVz dGltYXRlcyBmb3IgeCB1cCB0byBsYWctMTBcbmFjZih4LCBsYWcubWF4ID0g MTAsIHBsb3QgPSBGQUxTRSlcblxuIyBUeXBlIHRoZSBBQ0YgZXN0aW1hdGUg YXQgbGFnLTEwIFxuMC4xMDBcblxuIyBUeXBlIHRoZSBBQ0YgZXN0aW1hdGUg YXQgbGFnLTVcbjAuMTk4Iiwic2N0IjoiXG4jIHNjdCBjb2RlXG50ZXN0X2Z1 bmN0aW9uKFwiYWNmXCIsIGFyZ3M9YyhcInhcIiwgXCJsYWcubWF4XCIsIFwi cGxvdFwiKSlcbnRlc3Rfc3R1ZGVudF90eXBlZChcIjAuMTAwXCIpXG50ZXN0 X3N0dWRlbnRfdHlwZWQoXCIwLjE5OFwiKVxudGVzdF9lcnJvcigpXG5cbnN1 Y2Nlc3NfbXNnKFwiTXVpdG8gYm9tISBDb21vIGF1dG9jb3JyZWxhw6fDoWVz IHBvZGVtIHZhcmlhciBjb20gbyBsYWdvLCBnZXJhbmRvIGdlcmFsIG9wdMOj byBhdmFsaWFyIGF1dG9jb3JyZWxhw6fDoWVzIGNvbW8gZnVuw6fDo28IGRvIHR lbXBvLiBDb20gZXNzYSB2aXN0YSwsIGVzdGltYW1vcyBhIGZ1bmPDo28IGRl IGF1dG9jb3JyZWxhw6fDo28gKEFDRikIGRlIGB4YCBkbyBsYWcgMCDigJMg MTAuXCIpLCJoaW50IjoiXG5PIGNvbWFuZG8gYGBhY2YoKWBgIG5lc3RlIGV4 ZXJjw6NvIGRldmUgdXNhciBhcmd1bWVudG9zIHBhcmEgYGxvZy5tYXhgIChu ZXN0ZSBjYXNvLCBgMTBgKSBlIGBgcGxvdGAgKG5lc3RlIGNhc28sIEZGQUxT RWApLiBDb25mZXJhIG8gcmVzdWx0YWRvIGRvIGNvbWFuZG8gZGUgcGVydG8g Y2xvc2FtZW50ZS4gU2UgcHJlY2lzYXIgYWp1ZGEgY29tIG91dHJhcyBww6lz c2FzLCBhY2Vzc2Ugb2EgZG9jdW1lbnRhw6fDo28gZGlnaXRhbCBubyBzZXUg Y29uc29sZSByZXBldGluZG8gYGA/YWNmYGAuIn0=

Visualizando a função de autocorrelação

Estimar a função de autocorrelação (ACF) em várias defasagens permite avaliar como uma série temporal x se relaciona com seu passado. As estimativas numéricas são importantes para cálculos detalhados, mas também é útil visualizar a ACF como função da defasagem.

Na verdade, o comando acf() produz um gráfico por padrão. Ele também escolhe automaticamente um valor padrão para lag.max, o número máximo de defasagens a serem exibidas.

Três séries temporais x, y e z foram carregadas no seu ambiente R e estão plotadas à direita. A série temporal x mostra forte persistência, ou seja, o valor atual está relativamente próximo dos que o antecedem. A série temporal y apresenta um padrão periódico com ciclo de aproximadamente quatro observações, o que significa que o valor atual está relativamente próximo da observação de quatro passos atrás. A série temporal z não exibe um padrão claro.

Neste exercício, você vai plotar a função de autocorrelação estimada para cada série. Nos gráficos produzidos por acf(), a defasagem de cada estimativa aparece no eixo horizontal e cada autocorrelação é indicada pela altura das barras verticais. Lembre-se de que a ACF na defasagem 0 é sempre 1.

Por fim, cada gráfico da ACF inclui duas linhas azuis, horizontais e tracejadas, que representam intervalos de confiança de 95% por defasagem, centrados em zero. Eles servem para determinar a significância estatística de uma estimativa de autocorrelação em determinada defasagem em relação ao valor nulo zero, isto é, ausência de autocorrelação naquela defasagem.

Instruções

Use três chamadas da função acf() para exibir as ACFs estimadas de cada uma das três séries (x, y e z). Não é necessário especificar argumentos adicionais nas chamadas de acf().

eyJsYW5ndWFnZSI6InIgIiwicHJlX2V4ZXJjaXNlX2NvZGUiOiJcbiMgcGVj XG5zZXQuc2VlZCg0MzY2KVxucGFyKG1mY29sPWMoMywxKSlcbnggPSBhcmlt YS5zaW0obGlzdChhcj0wLjc1KSxuPTE1MClcbnRzLnBsb3QoeCwgbWFpbiA9 IFwiVEhSRUUgVElNRSBTRVJJRVNcIilcbnkgPSBhcmltYS5zaW0obGlzdChh cj1jKDAsMCwwLDAuODgpKSxuPTE1MClcbnRzLnBsb3QoeSlcbnogPSBhcmlt YS5zaW0obGlzdChvcmRlcj1jKDAsMCwwKSksbj0xNTApXG50cy5wbG90KHop Iiwic2FtcGxlIjoiXG4jIFZpZXcgdGhlIEFDRiBvZiB4XG5hY2YoX19fKVxu XG4jIFZpZXcgdGhlIEFDRiBvZiB5XG5cblxuIyBWaWV3IHRoZSBBQ0Ygb2Yg eiIsInNvbHV0aW9uIjoiXG4jIFZpZXcgdGhlIEFDRiBvZiB4XG5hY2YoeClc blxuIyBWaWV3IHRoZSBBQ0Ygb2YgeVxuYWNmKHkpXG5cbiMgVmlldyB0aGUg QUNGIG9mIHpcbmFjZih6KSIsInNjdCI6IlxudGVzdF9mdW5jdGlvbihcImFj ZlwiLCBpbmRleCA9IDEpXG50ZXN0X2Z1bmN0aW9uKFwiYWNmXCIsIGluZGV4 ID0gMilcbnRlc3RfZnVuY3Rpb24oXCJhY2ZcIiwgaW5kZXggPSAzKVxudGVz dF9lcnJvcigpXG5cbnN1Y2Nlc3NfbXNnKFwiUGVyZmVpdG8hIE9zIGdyw6Fma WNvcyBkYSBBQ0YgZGUgYHhgIG1vc3RyYW0gY29ycmVsYcOnw6fDo2VzIHBvc2 l0aXZhcyBwYXJhIGRpdmVyc2FzIGRlZmFzYWdlbnMsIGVuZGVuZG8gcmFwa WRhbWVudGUgYSB6ZXJvLiBNYXMgbmEgQUNGIGRlIGB6YCBmaWNhIHBlcnRvIG RlIHByw6F0aWNhbWVudGUgemVybyBzdW1hcmlhIHF1ZSBhIHNlcmllIGB6YC BuYW8gw6AgbXVpdG8gcmVsYWNpb25hZGEgYW8gc2V1IHBhc3RvLCBubyBt w6lvIGF0w6kgbsOjIGVtIGxhZyAyMC5cIiksImhpbnQiOiJcblF1YW5kbyB1 c2FyIGBgYWNmKClgYCBuZXNzYXMgY2hhbWFkYXMsIG7Do28gw6ogbmVjZXNz w6FyaW8gZXNwZWNpZmljYXIgYGxhZy5tYXhgIG91IGBwbG90YCBub3MgY29t YW5kb3MuIE8gY29tYW5kbyBgYGFjZigpYGAgZXNjb2xoZSB1bSB2YWxvciBk ZSBgYGxhZy5tYXhgIGRlIGZvcm1hIHBhZHJhw6FvIGUgcGFkcmFvIGFkanVz dGFyIGF1dG9tYXRpY2FtZW50ZSBvIGdyw6FmaWNvLiJ9


Se você quiser aprender mais com este curso, aqui está o link.

Confira nosso Time Series Analysis using R: Tutorial.

Tópicos
R
Ciência de dados

Cursos de R

Curso

Introdução ao R

4 h
3.1M
Domine os conceitos básicos de análise de dados em R, incluindo vetores, listas e quadros de dados, e pratique o R com conjuntos de dados reais.
Ver detalhesRight Arrow
Iniciar Curso
Ver maisRight Arrow
Relacionado

Tutorial

Criação de uma lista no R

Pratique Listas em R usando o material do curso Intro to R do DataCamp.
Ryan Sheehy's photo

Ryan Sheehy

3 min

multiple linear regression

Tutorial

Regressão linear múltipla no R: Tutorial com exemplos

Uma visão geral completa para entender as regressões lineares múltiplas no R por meio de exemplos.
Zoumana Keita 's photo

Zoumana Keita

12 min

Tutorial

Tutorial de regressão linear no R

Neste tutorial, você aprenderá os fundamentos de um modelo estatístico muito popular: a regressão linear.

Eladio Montero Porras

15 min

Tutorial

Como fazer um histograma ggplot2 no R

Aprenda a criar um histograma ggplot2 no R. Crie histogramas no R com base na gramática dos gráficos.

Kevin Babitz

15 min

Tutorial

Tutorial de análise de componentes principais no R

Neste tutorial, você aprenderá a usar o R PCA (Principal Component Analysis) para extrair dados com muitas variáveis e criar visualizações para exibir esses dados.
Zoumana Keita 's photo

Zoumana Keita

15 min

Tutorial

Pacotes R: Um tutorial para iniciantes

Uma introdução aos pacotes do R com base em 11 das perguntas mais frequentes dos usuários.
DataCamp Team's photo

DataCamp Team

15 min

Ver MaisVer Mais