Ir al contenido principal

Autocorrelación en R

Practica la autocorrelación en R utilizando material del curso Introduction to Time Series Analysis de DataCamp.
Actualizado 17 sept 2026  · 6 min leer

Explorar con IA

ChatGPTClaudePerplexity

Si quieres hacer nuestro curso Introduction to Time Series Analysis in R, aquí tienes el enlace.

Cálculo de autocorrelaciones

Las autocorrelaciones o correlaciones retardadas se utilizan para evaluar si una serie temporal depende de su pasado. Para una serie temporal x de longitud n, consideramos los n-1 pares de observaciones separados por una unidad de tiempo. El primer par es (x[2],x[1]) y el siguiente es (x[3],x[2]). Cada par es de la forma (x[t],x[t-1]), donde t es el índice de la observación, que en este caso varía de 2 a n. La autocorrelación de retardo 1 de x puede estimarse como la correlación muestral de estos pares (x[t], x[t-1]).

En general, podemos crear manualmente estos pares de observaciones. Primero, crea dos vectores, x_t0 y x_t1, cada uno de longitud n-1, de forma que las filas correspondan a los pares (x[t], x[t-1]). Luego aplica la función cor() para estimar la autocorrelación de retardo 1.

Por suerte, el comando acf() ofrece un atajo. Aplicar acf(..., lag.max = 1, plot = FALSE) a una serie x calcula automáticamente la autocorrelación de retardo 1.

Por último, ten en cuenta que las dos estimaciones difieren ligeramente porque emplean escalados distintos al calcular la covarianza muestral, 1/(n-1) frente a 1/n. Aunque la segunda es sesgada, en análisis de series temporales suele preferirse y las autocorrelaciones resultantes solo difieren por un factor (n-1)/n.

En este ejercicio practicarás tanto el cálculo manual como el automático de la autocorrelación de retardo 1. La serie temporal x y su longitud n (150) ya están cargadas. La serie aparece en la gráfica de la derecha.

Instrucciones

  • Crea dos vectores, x_t0 y x_t1, cada uno de longitud n-1, de forma que las filas correspondan a los pares (x[t], x[t-1]).
  • Confirma que x_t0 y x_t1 son pares (x[t], x[t-1]) usando el código preescrito.
  • Usa plot() para ver el diagrama de dispersión de x_t0 y x_t1.
  • Usa cor() para ver la correlación entre x_t0 y x_t1.
  • Usa acf() con x para calcular automáticamente la autocorrelación de retardo 1. Establece el argumento lag.max en 1 para obtener un único retardo y el argumento plot en FALSE.
  • Confirma que el factor de diferencia es (n-1)/n usando el código preescrito.
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 KVxudGVzdF9lcnJvcigpXG5cbnN1Y2Nlc3NfbXNnKFwiRXhjZWxsZW50IHdv cmshIEFzIHlvdSBjYW4gc2VlLCB0aGUgYGFjZigpYCBjb21tYW5kIGlzIGEg aGVscGZ1bCBzaG9ydGN1dCBmb3IgY2FsY3VsYXRpbmcgYXV0b2NvcnJlbGF0 aW9uLiBJbiB0aGUgbmV4dCBmZXcgZXhlcmNpc2VzLCB5b3UnbGwgZXhwbG9y ZSBhZGRpdGlvbmFsIGZlYXR1cmVzIG9mIHRoaXMgY29tbWFuZC5cIikiLCJo aW50IjoiXG5UaGUgYGBhY2YoKWBgIGNvbW1hbmQgaW4gdGhpcyBleGVyY2lz ZSBzaG91bGQgdGFrZSBhcmd1bWVudHMgZm9yIGBsb2cubWF4YCAoaW4gdGhp cyBjYXNlLCBgMWApIGFuZCBgcGxvdGAgKGluIHRoaXMgY2FzZSwgYEZBTFNF YCkuIElmIHlvdSdyZSBjb25mdXNlZCwgeW91IGNhbiBhY2Nlc3MgdGhlIGhl bHAgZG9jdW1lbnRhdGlvbiBmb3IgdGhpcyBjb21tYW5kIGJ5IHR5cGluZyBg YD9hY2ZgYCBpbnRvIHlvdXIgUiBjb25zb2xlLiJ9

Si todo tiene sentido, sigue con el siguiente ejercicio. Si no, aquí tienes un vídeo de resumen.

Vídeo de resumen sobre autocorrelación

La función de autocorrelación

Las autocorrelaciones pueden estimarse a muchos retardos para evaluar mejor cómo una serie temporal se relaciona con su pasado. Normalmente nos interesa más cómo se relaciona con su pasado más reciente.

La función acf(..., lag.max = ..., plot = FALSE) estima todas las autocorrelaciones desde 0, 1, 2, ... hasta el valor indicado en el argumento lag.max. En el ejercicio anterior te centraste en la autocorrelación de retardo 1 fijando el argumento lag.max en 1.

En este ejercicio explorarás más usos del comando acf(). De nuevo, la serie temporal x ya está precargada y aparece en la gráfica de la derecha.

Instrucciones

  • Usa acf() para ver las autocorrelaciones de la serie x de 0 a 10. Establece el argumento lag.max en 10 y deja plot como FALSE.
  • Copia y pega la estimación de autocorrelación (ACF) en el retardo 10.
  • Copia y pega la estimación de autocorrelación (ACF) en el retardo 5.
eyJsYW5ndWFnZSI6InIiLCJwcmVfZXhlcmNpc2VfY29kZSI6IlxuIyBwZWNc bnNldC5zZWVkKDk4NzYpXG54ID0gYXJpbWEuc2ltKGxpc3QoYXI9MC43NSks bj0xNTApXG50cy5wbG90KHgpXG4iLCJzYW1wbGUiOiJcbiMgR2VuZXJhdGUg QUNGIGVzdGltYXRlcyBmb3IgeCB1cCB0byBsYWctMTBcbmFjZihfX18sIGxh Zy5tYXggPSBfX18sIHBsb3QgPSBGQUxTRSlcblxuIyBUeXBlIHRoZSBBQ0Yg ZXN0aW1hdGUgYXQgbGFnLTEwIFxuXG5cbiMgVHlwZSB0aGUgQUNGIGVzdGlt YXRlIGF0IGxhZy01Iiwic29sdXRpb24iOiJcbiMgR2VuZXJhdGUgQUNGIGVz dGltYXRlcyBmb3IgeCB1cCB0byBsYWctMTBcbmFjZih4LCBsYWcubWF4ID0g MTAsIHBsb3QgPSBGQUxTRSlcblxuIyBUeXBlIHRoZSBBQ0YgZXN0aW1hdGUg YXQgbGFnLTEwIFxuMC4xMDBcblxuIyBUeXBlIHRoZSBBQ0YgZXN0aW1hdGUg YXQgbGFnLTVcbjAuMTk4Iiwic2N0IjoiXG4jIHNjdCBjb2RlXG50ZXN0X2Z1 bmN0aW9uKFwiYWNmXCIsIGFyZ3M9YyhcInhcIiwgXCJsYWcubWF4XCIsIFwi cGxvdFwiKSlcbnRlc3Rfc3R1ZGVudF90eXBlZChcIjAuMTAwXCIpXG50ZXN0 X3N0dWRlbnRfdHlwZWQoXCIwLjE5OFwiKVxudGVzdF9lcnJvcigpXG5cbnN1 Y2Nlc3NfbXNnKFwiR3JlYXQgam9iISBTaW5jZSBhdXRvY29ycmVsYXRpb25z IG1heSB2YXJ5IGJ5IGxhZywgd2Ugb2Z0ZW4gY29uc2lkZXIgYXV0b2NvcnJl bGF0aW9ucyBhcyBhIGZ1bmN0aW9uIG9mIHRoZSB0aW1lIGxhZy4gVGFraW5n IHRoaXMgdmlldywgd2UgaGF2ZSBub3cgZXN0aW1hdGVkIHRoZSBhdXRvY29y cmVsYXRpb24gZnVuY3Rpb24gKEFDRikgb2YgYHhgIGZyb20gbGFncyAwIHRv IDEwLlwiKSIsImhpbnQiOiJcblRoZSBgYGFjZigpYGAgY29tbWFuZCBpbiB0 aGlzIGV4ZXJjaXNlIHNob3VsZCB0YWtlIGFyZ3VtZW50cyBmb3IgYGxvZy5t YXhgIChpbiB0aGlzIGNhc2UsIGAxMGApIGFuZCBgcGxvdGAgKGluIHRoaXMgY2FzZSwgYEZBTFNFYCkuIEJlIHN1cmUgdG8gY2xvc2VseSBleGFtaW5lIHRo ZSBvdXRwdXQgb2YgdGhpcyBjb21tYW5kLiBJZiB5b3UncmUgY29uZnVzZWQs IHlvdSBjYW4gYWNjZXNzIHRoZSBoZWxwIGRvY3VtZW50YXRpb24gZm9yIHRo aXMgY29tbWFuZCBieSB0eXBpbmcgYGA/YWNmYGAgaW50byB5b3VyIFIgY29u c29sZS4ifQ==

Visualización de la función de autocorrelación

Estimar la función de autocorrelación (ACF) a múltiples retardos nos permite evaluar cómo se relaciona una serie temporal x con su pasado. Las estimaciones numéricas son clave para cálculos detallados, pero también es útil visualizar la ACF como función del retardo.

De hecho, el comando acf() genera una figura por defecto. También elige por defecto un valor para lag.max, el número máximo de retardos a mostrar.

Se han cargado en tu entorno de R tres series temporales, x, y y z, y se muestran en la gráfica de la derecha. La serie x muestra una fuerte persistencia, es decir, el valor actual está muy relacionado con los que le preceden. La serie y muestra un patrón periódico con un ciclo de aproximadamente cuatro observaciones, lo que significa que el valor actual está relativamente cerca del de cuatro observaciones antes. La serie z no presenta un patrón claro.

En este ejercicio trazarás una función de autocorrelación estimada para cada serie. En las figuras que produce acf(), el retardo de cada estimación aparece en el eje horizontal y cada estimación se indica con la altura de las barras verticales. Recuerda que la ACF en el retardo 0 siempre es 1.

Por último, cada figura de ACF incluye un par de líneas azules horizontales discontinuas que representan intervalos de confianza del 95% por retardo, centrados en cero. Se utilizan para determinar la significación estadística de una estimación de autocorrelación en un retardo dado frente a un valor nulo de cero; es decir, ausencia de autocorrelación en ese retardo.

Instrucciones

Usa tres llamadas a la función acf() para mostrar las ACF estimadas de cada una de tus series temporales (x, y y z). No es necesario especificar argumentos adicionales en tus llamadas a acf().

eyJsYW5ndWFnZSI6InIgIiwicHJlX2V4ZXJjaXNlX2NvZGUiOiJcbiMgcGVj XG5zZXQuc2VlZCg0MzY2KVxucGFyKG1mY29sPWMoMywxKSlcbnggPSBhcmlt YS5zaW0obGlzdChhcj0wLjc1KSxuPTE1MClcbnRzLnBsb3QoeCwgbWFpbiA9 IFwiVEhSRUUgVElNRSBTRVJJRVNcIilcbnkgPSBhcmltYS5zaW0obGlzdChh cj1jKDAsMCwwLDAuODgpKSxuPTE1MClcbnRzLnBsb3QoeSlcbnogPSBhcmlt YS5zaW0obGlzdChvcmRlcj1jKDAsMCwwKSksbj0xNTApXG50cy5wbG90KHop Iiwic2FtcGxlIjoiXG4jIFZpZXcgdGhlIEFDRiBvZiB4XG5hY2YoX19fKVxu XG4jIFZpZXcgdGhlIEFDRiBvZiB5XG5cblxuIyBWaWV3IHRoZSBBQ0Ygb2Yg eiIsInNvbHV0aW9uIjoiXG4jIFZpZXcgdGhlIEFDRiBvZiB4XG5hY2YoeClc blxuIyBWaWV3IHRoZSBBQ0Ygb2YgeVxuYWNmKHkpXG5cbiMgVmlldyB0aGUg QUNGIG9mIHpcbmFjZih6KSIsInNjdCI6IlxudGVzdF9mdW5jdGlvbihcImFj ZlwiLCBpbmRleCA9IDEpXG50ZXN0X2Z1bmN0aW9uKFwiYWNmXCIsIGluZGV4 ID0gMilcbnRlc3RfZnVuY3Rpb24oXCJhY2ZcIiwgaW5kZXggPSAzKVxudGVz dF9lcnJvcigpXG5cbnN1Y2Nlc3NfbXNnKFwiR3JlYXQgam9iISBQbG90dGlu ZyB0aGUgZXN0aW1hdGVkIEFDRiBvZiBgeGAgc2hvd3MgbGFyZ2UgcG9zaXRp dmUgY29ycmVsYXRpb25zIGZvciBzZXZlcmFsIGxhZ3Mgd2hpY2ggcXVpY2ts eSBkZWNheSB0b3dhcmRzIHplcm8uIFBsb3R0aW5nIHRoZSBlc3RpbWF0ZWQg QUNGIG9mIGB5YCBzaG93cyBsYXJnZSBwb3NpdGl2ZSBjb3JyZWxhdGlvbnMg YXQgbGFncyB3aGljaCBhcmUgbXVsdGlwbGVzIG9mIGZvdXIsIGFsdGhvdWdo IHRoZXNlIGFsc28gZGVjYXkgdG93YXJkcyB6ZXJvIGFzIHRoZSBsYWcgbXVs dGlwbGUgaW5jcmVhc2VzLiBGaW5hbGx5LCB0aGUgZXN0aW1hdGVkIEFDRiBv ZiBgemAgaXMgbmVhciB6ZXJvIGF0IGFsbCBsYWdzLiBJdCBhcHBlYXJzIHRo ZSBzZXJpZXMgYHpgIGlzIG5vdCBsaW5lYXJseSByZWxhdGVkIHRvIGl0cyBw YXN0LCBhdCBsZWFzdCB0aHJvdWdoIGxhZyAyMC5cIikiLCJoaW50IjoiXG5X aGVyZWFzIHlvdSBwcmV2aW91c2x5IHNwZWNpZmllZCB0aGUgYGxhZy5tYXhg IGFuZCBgcGxvdGAgYXJndW1lbnRzIGluIHlvdXIgY2FsbHMgdG8gYGBhY2Yo KWBgLCBuZWl0aGVyIHRoZXNlIGFyZ3VtZW50cyBhcmUgc3RyaWN0bHkgbmVj ZXNzYXJ5IHdoZW4gdXNpbmcgdGhlIGBgYWNmKClgYCBjb21tYW5kLiBgYGFj ZigpYGAgd2lsbCBjaG9vc2UgYSBgbGFnLm1heGAgdmFsdWUgZm9yIHlvdSBi eSBkZWZhdWx0IGFuZCB3aWxsIHNldCB0aGUgYHBsb3RgIGFyZ3VtZW50IHRv IGBUUlVFYC4gSWYgeW91J3JlIGNvbmZ1c2VkLCB5b3UgY2FuIGFjY2VzcyB0 aGUgaGVscCBkb2N1bWVudGF0aW9uIGZvciB0aGlzIGNvbW1hbmQgYnkgdHlw aW5nIGBgP2FjZmBgIGludG8geW91ciBSIGNvbnNvbGUuIn0=


Si quieres aprender más con este curso, aquí tienes el enlace.

Echa un vistazo a nuestro Time Series Analysis using R: Tutorial.

Temas
R
Ciencia de datos

Cursos de R

Curso

Introducción a R

4 h
3.1M
Domina los fundamentos del análisis de datos en R, como vectores, listas y marcos de datos, y practica R con conjuntos de datos reales.
Ver detallesRight Arrow
Iniciar Curso
Ver másRight Arrow
Relacionado

Tutorial

Creación de una lista en R

Practica Listas en R utilizando el material del curso Introducción a R de DataCamp.
Ryan Sheehy's photo

Ryan Sheehy

3 min

Tutorial

Tutorial de regresión lineal en R

En este tutorial aprenderás los fundamentos de un modelo estadístico muy popular: la regresión lineal.

Eladio Montero Porras

15 min

multiple linear regression

Tutorial

Regresión lineal múltiple en R: tutorial con ejemplos

Una visión completa para entender las regresiones lineales múltiples en R a través de ejemplos.
Zoumana Keita 's photo

Zoumana Keita

12 min

Tutorial

Matriz de correlaciones en Excel: Guía completa para crear e interpretar

Aprende el concepto estadístico de correlación, y sigue el cálculo e interpretación de correlaciones para un conjunto de datos de muestra, en un tutorial paso a paso.
Arunn Thevapalan's photo

Arunn Thevapalan

9 min

Tutorial

Tutorial de tablas de contingencia en R

En este tutorial, aprenderás a crear tablas de contingencia y a probar y cuantificar las relaciones visibles en ellas.
Łukasz Deryło's photo

Łukasz Deryło

10 min

Tutorial

Tutorial de pruebas T en R: Aprende a realizar pruebas T

Determina si existe una diferencia significativa entre las medias de los dos grupos utilizando t.test() en R.
Abid Ali Awan's photo

Abid Ali Awan

10 min

Ver MásVer Más