studio - superponer graficas en r
R ayuda a convertir el factor a la fecha (3)
Importé un archivo csv con fechas de una consulta SQL, pero las fechas son realmente valores de fecha y hora y R parece no reconocerlos como fechas. ¿Cómo los convierto a fechas? (No necesito incluir la porción de tiempo.)
> mydate
[1] 1/15/2006 0:00:00
2373 Levels: 1/1/2006 0:00:00 1/1/2007 0:00:00 1/1/2008 0:00:00 ... 9/9/2012 0:00:00
> class(mydate)
[1] "factor"
> as.Date(mydate)
Error in charToDate(x) :
character string is not in a standard unambiguous format
¿Cómo convierto mi fecha a una fecha?
Echa un vistazo a los formatos en ?strptime
R> foo <- factor("1/15/2006 0:00:00")
R> foo <- as.Date(foo, format = "%m/%d/%Y %H:%M:%S")
R> foo
[1] "2006-01-15"
R> class(foo)
[1] "Date"
Tenga en cuenta que esto funcionará incluso si foo
comienza como un personaje. También funcionará si se utilizan otros formatos de fecha ( as.POSIXlt
, as.POSIXct
).
Estabas cerca format=
debe agregar a la llamada as.Date
:
mydate <- factor("1/15/2006 0:00:00")
as.Date(mydate, format = "%m/%d/%Y")
## [1] "2006-01-15"
Puedes probar el paquete lubridate que hace la vida mucho más fácil
library(lubridate)
mdy_hms(mydate)
Lo anterior cambiará el formato de fecha a POSIXct
Un ejemplo de trabajo de ejemplo:
> data <- "1/15/2006 01:15:00"
> library(lubridate)
> mydate <- mdy_hms(data)
> mydate
[1] "2006-01-15 01:15:00 UTC"
> class(mydate)
[1] "POSIXct" "POSIXt"
Para el caso con el uso de factor como carácter.
data <- factor("1/15/2006 01:15:00")
library(lubridate)
mydate <- mdy_hms(as.character(data))