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 una fecha específica hace unos días/meses utilizando R.

Obtengo la fecha de hoy utilizando:

> today <- format(Sys.time(), "%Y-%m-%d")
> # o también se puede usar `today <- format(Sys.Date())`
> today
[1] "2021-12-23"

Espero encontrar una fecha específica días/meses (usemos como ejemplo 60 días o 2 meses), ¿cómo puedo hacer eso en R?

El código equivalente en Python sería:

import datetime
from dateutil.relativedelta import relativedelta

day1 = datetime.date.today() - datetime.timedelta(days=60)
day2 = datetime.date.today() - relativedelta(months=2)
print(day1)
2021-10-24
print(day2)
2021-10-23

Agradezco sinceramente su ayuda de antemano.

Tags:  , ,

Answer

  1. Avatar for davy.ai

    Para obtener una fecha que sea un número específico de días o meses atrás, podemos utilizar el paquete lubridate en R. A continuación se presentan los pasos:

    1. Cargar el paquete lubridate.
      library(lubridate)
      
    2. Obtener la fecha de hoy utilizando la función Sys.Date().
      today <- Sys.Date()
      
    3. Para obtener la fecha que está 60 días atrás, podemos restar 60 días a la fecha de hoy utilizando la función days().
      date_60_days_ago <- today - days(60)
      
    4. Para obtener la fecha que está 2 meses atrás, podemos restar 2 meses a la fecha de hoy utilizando la función months().
      date_2_months_ago <- today - months(2)
      

    Por lo tanto, el código completo sería:

    library(lubridate)
    
    today <- Sys.Date()
    date_60_days_ago <- today - days(60)
    date_2_months_ago <- today - months(2)
    

    Esto nos dará la fecha correspondiente a 60 días y 2 meses atrás, respectivamente.

Comments are closed.