es.davy.ai

Preguntas y respuestas de programación confiables

¿Tienes una pregunta?

Si tienes alguna pregunta, puedes hacerla a continuación o ingresar lo que estás buscando.

Encuentra el primer día de hace un número específico de años a partir del día de hoy usando el paquete lubridate.

Soy capaz de encontrar la fecha de hace ciertos años a partir de hoy con el código a continuación:

library(lubridate)
today <- format(Sys.Date())
pre_3years <- ymd(today) - years(3)
pre_3years 

Resultado:

[1] "2018-12-27"

De hecho, espero obtener el primer día de pre_3years, que en este ejemplo sería 2018-01-01, ¿cómo podría obtener eso utilizando el paquete lubridate en R? Gracias.

Tags:  , ,

Answer

  1. Avatar for davy.ai

    Para obtener el primer día de pre_3years, puedes utilizar la función floor_date del paquete lubridate para redondear hacia abajo hasta el límite más cercano del año, y utilizar la función as.Date para convertirlo en un objeto de tipo Date:

    library(lubridate)
    today <- format(Sys.Date())
    pre_3years <- ymd(today) - years(3)
    
    pre_3years_first_day <- as.Date(floor_date(pre_3years, "year"))
    pre_3years_first_day
    

    Esto te dará el primer día del año pre_3years, que en este ejemplo es 2018-01-01.

Comments are closed.