questions org frequently asked r date r-faq

org - as.Date devuelve NA mientras se convierte de ''ddmmmyyyy''



https cran r project org r (2)

Funciona para mi. Las razones por las que no funciona para usted probablemente tengan que ver con la configuración regional de su sistema.

?as.Date tiene lo siguiente para decir:

## This will give NA(s) in some locales; setting the C locale ## as in the commented lines will overcome this on most systems. ## lct <- Sys.getlocale("LC_TIME"); Sys.setlocale("LC_TIME", "C") x <- c("1jan1960", "2jan1960", "31mar1960", "30jul1960") z <- as.Date(x, "%d%b%Y") ## Sys.setlocale("LC_TIME", lct)

Vale la pena intentarlo.

Estoy tratando de convertir la cadena "2013-JAN-14" en una fecha de la siguiente manera:

sdate1 <- "2013-JAN-14" ddate1 <- as.Date(sdate1,format="%Y-%b-%d") ddate1

pero entiendo:

[1] NA

Qué estoy haciendo mal ? ¿Debería instalar un paquete para este propósito? (Intenté instalar chron).


Mi solución a continuación podría no funcionar para todos los problemas que resulten en .Date () que devuelve NA, pero funciona para algunos, es decir, cuando la variable Fecha se lee en formato de factor.

Simplemente lea en .csv con stringsAsFactors = FALSE

data <- read.csv("data.csv", stringsAsFactors = FALSE) data$date <- as.Date(data$date)

Después de intentar (y fallar) resolver el problema de NA con la configuración regional de mi sistema, esta solución funcionó para mí.