Subtração de datas
Assim como com números, você pode fazer operações aritméticas com datas. Em particular, dá para encontrar a diferença entre duas datas, em dias, usando a subtração:
today <- as.Date("2017-01-02")
tomorrow <- as.Date("2017-01-03")
one_year_away <- as.Date("2018-01-02")
tomorrow - today
Time difference of 1 days
one_year_away - today
Time difference of 365 days
De forma equivalente, você pode usar a função difftime() para obter o intervalo de tempo.
difftime(tomorrow, today)
Time difference of 1 days
# Com algumas opções extras!
difftime(tomorrow, today, units = "secs")
Time difference of 86400 secs
Este exercício faz parte do curso
R Intermediário para Finanças
Instruções do exercício
- Um vetor de
datesjá foi criado para você. - Você pode usar a subtração para confirmar que 1º de janeiro de 1970 é a primeira data a partir da qual o R conta. Primeiro, crie uma variável chamada
origincontendo"1970-01-01"como uma data. - Agora, use
as.numeric()emdatespara ver quantos dias se passaram desde 1º de janeiro de 1970. - Por fim, subtraia
origindedatespara confirmar os resultados! (Perceba como o recycling é usado aqui!)
Exercício interativo prático
Experimente este exercício completando este código de exemplo.
# Dates
dates <- as.Date(c("2017-01-01", "2017-01-02", "2017-01-03"))
# Create the origin
origin <- ___
# Use as.numeric() on dates
___
# Find the difference between dates and origin
___