INTRODUCCIÓN

¿Qué es una serie de tiempo?

Una serie de tiempo es una lista de fechas, cada una de las cuales se asocia a un valor numérico. Las series de tiempo son un modo estructurado de representar datos. Visualmente, es una curva que evoluciona a lo largo del tiempo.

Pronóstico de las series de tiempo

El pronóstico de las series de tiempo significa que extendemos los valores históricos al futuro, donde aún no hay mediciones disponibles. El pronóstico se realiza generalmente para optimizar áreas como los niveles de inventario, la capacidad de producción o los niveles de personal.

Existen dos variables estructurales principales que definen un pronóstico de serie de tiempo:

Variable Descripción
Periodo Representa el nivel de agregación. Los períodos más comunes son meses, semanas y días.
Horizonte Representa la cantidad de períodos por adelantado que deben ser pronosticados.
¿Que es Lubridate?

Cuando trabajamos con series de tiempo en R, muchas veces es complicado que este programa acepte que los datos contengan fecha y hora; Lubridate fue creado por Garrett Grolemund y Hadley Wickham y es un paquete de R que simplifica la labor de trabajar con fechas y horas en R.


NO OLVIDES

  1. Instalar lubridate paquete con el comando:
install.packages("lubridate",dependencies = TRUE)
  1. Llamar el paquete a la sesión de trabajo.
library(lubridate)
## 
## Attaching package: 'lubridate'
## The following object is masked from 'package:base':
## 
##     date

COMENZAR A USAR LUBRIDATE

Sus funciones tienen diversos formatos para trabajar. La estructura de las fechas en lubridate son y (año), m (mes) y d (día), mismos que se pueden almacenar en variables para simplificarlos en una tabla.

Por ejemplo:

A continuación, se muestran algunos comandos con la descripción de la función que desempeña:

Función Descripción
Sys.getlocale Devuelve la hora local.
Today Devuelve la fecha del día actual.
rbind Separa el año, mes y día de una fecha.
wday Extrae el día de la semana donde el día es representado por un valor numérico; donde “label=true” muestra el nombre del día de la semana.
now Devuelve la fecha y hora de ese momento.
hour/minute/second Devuelven el valor hora/minuto/segundo al momento.
ymd, dmy, hms, etc… Ayudan a separar los componentes de la fecha y hora cuando no tienen una estructura definida.
update Permite actualizar fecha y hora.
with_tz y force_tz Funciones para realizar combinaciones aritméticas.

Estructura de comandos

Sys.getlocale("LC_TIME")
today()
rbind(y,m,d)
wday(variable,label = true)
now()
hour()
minute()
second()
ymd (), dmy (), hms (), ymd_hms ()

Intervalos

Los intervalos son periodos de tiempo específicos (debido a que están vinculados a fechas específicas). Las funciones auxiliares para crear duraciones siguen el mismo formato, pero empiezan con un “d” (por duración) o “e” (para exacto).


EJERCICIOS

my_day <- today()
my_day
## [1] "2017-06-07"
rbind(year(my_day),month(my_day),day(my_day)) #Estructura de fecha. 
##      [,1]
## [1,] 2017
## [2,]    6
## [3,]    7
wday(my_day,label = TRUE)
## [1] Wed
## Levels: Sun < Mon < Tues < Wed < Thurs < Fri < Sat
dmy("13/07/1993") #Formato de fecha.
## [1] "1993-07-13"
actually <- now()
actually
## [1] "2017-06-07 19:07:48 CDT"
meeting <- ymd_hms("2017-06-13 12:00:00", tz = "America/Chicago") #Visualizar hora actual en otra ubicación. 
with_tz(meeting, "Pacific/Auckland")
## [1] "2017-06-14 05:00:00 NZST"
minutes(2)
## [1] "2M 0S"
dminutes(2) #Duración de 2 minutos
## [1] "120s (~2 minutes)"
leap_year(2017)
## [1] FALSE
ymd(20170713) + years(5) #Operación airtmética para sumar 5 años a la fecha. 
## [1] "2022-07-13"

CONCLUSIONES

El paquete lubridate nos ayuda a jugar con la estructura de las fechas y horas, además de realizar operaciones aritméticas para resolver problemas de tiempo, ajustes de hora para cambios de vuelos, etc… Es una excelente herramienta que complementa otros paquetes de R enfocados al análisis de series de tiempo.