31 agosto, 2021
Por quê?
Oustros problemas que envolve esse tipo de dado:
"Date"Sys.Date()Sys.Date() é um objeto de classe "Date"# Qual a data de hoje? hoje <- Sys.Date(); hoje ## [1] "2021-08-31" # Qual o tipo de objeto? typeof(hoje) ## [1] "double" # Eh um vetor? is.vector(hoje) ## [1] FALSE # Eh 'double'? is.vector(hoje, mode = "double") ## [1] FALSE # Qual a sua classe? class(hoje) ## [1] "Date"
# Eh um vetor? is.vector(unclass(hoje)) ## [1] TRUE # Eh 'double'? is.vector(unclass(hoje), mode = "double") ## [1] TRUE # Qual a sua classe? class(hoje) ## [1] "Date" # Imprimindo hoje sem classe unclass(hoje) ## [1] 18870
# Objeto x tipo "character"
x <- "2017-08-02"
(data <- as.Date(x))
## [1] "2017-08-02"
class(data)
## [1] "Date"
# Objeto x tipo "numeric"
x <- 10
# Com o objeto numerico, precisamos informar
# a data inicial no argumento 'origin'. Nesse
# caso, o retorno sera a data x dias apos
# 'origin'
#
(data <- as.Date(x, origin = "2017-08-02"))
## [1] "2017-08-12"
# Objeto de classe 'POSIXct'
x <- as.POSIXct("2018-08-02 5:30")
(data <- as.Date(x))
## [1] "2018-08-02"
class(data)
## [1] "Date"
# Dia de hoje Sys.time() ## [1] "2021-08-31 21:13:57 -03" # Formatando format(Sys.time(), "%d/%m/%Y") ## [1] "31/08/2021" format(Sys.time(), "%d de %B de %Y") ## [1] "31 de agosto de 2021"
# Hoje Sys.Date() ## [1] "2021-08-31" # Data daqui a 10 dias (x <- Sys.Date() + 10) ## [1] "2021-09-10" # Da ha 10 dias (y <- Sys.Date() - 20 ) ## [1] "2021-08-11" # Diferença x - y ## Time difference of 30 days # x eh igual a y? x == y ## [1] FALSE