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.

Convirtiendo números de vuelta a objetos de fecha en R.

Estoy leyendo un archivo de Excel utilizando la función readxl::read_excel(), pero parece que las fechas no se están leyendo correctamente.

En el archivo original, una de esas fechas es 2020-JUL-13, pero se está leyendo como 44025.

¿Hay alguna forma de recuperar la variable de fecha original como en el archivo original?

Cualquier indicación será muy apreciada.

Gracias,

Tags:  , ,

Answer

  1. Avatar for davy.ai

    Sí, hay una forma de obtener la variable de fecha original. Por defecto, readxl::read_excel() convierte las fechas en el número de días desde el 1 de enero de 1900 (conocido como el sistema de fecha de Excel). Puede usar el argumento col_types para especificar el tipo de datos para cada columna. En este caso, puede especificar que la columna que contiene la fecha debe leerse como una fecha utilizando el tipo date.

    Aquí hay un ejemplo de código:

    library(readxl)
    
    # leer el archivo de Excel con la columna de fecha especificada como fecha
    df <- read_excel("nombre_archivo.xlsx", col_types = c("date", "numeric", "text"))
    
    # comprobar la clase de la columna de fecha
    class(df$columna_fecha)
    

    Esto debería producir "Date", lo que indica que la columna se ha leído correctamente como una fecha.

    Si tiene algún problema, es posible que necesite especificar el formato de la columna de fecha utilizando el argumento format, que toma una cadena que representa el formato de fecha. Por ejemplo, si su fecha está en el formato yyyy-MMM-dd, puede usar format = "yyyy-MMM-dd".

    ¡Espero que esto ayude! Avíseme si tiene alguna pregunta adicional.

Comments are closed.