R Data Frame – Convert Column of type String to Date Time
To convert a data frame column of type string into date/time in R, call as.POSIXct()
function and pass the column as argument to this function. We may optionally pass time zone, date/time format, etc., to this function. POSIXct
class represents the calendar dates and times.
Syntax
The syntax to use as.POSIXct()
to convert column x
of data frame df
with date/time in format format
is
as.POSIXct(df$x) as.POSIXct(df$x, tz = "") as.POSIXct(df$x, tz = "", format)
Timezone tz
is optional. format
is optional.
Examples
Convert String Column to Date Time
In the following program, we take a data frame df
, and covert the column x
to POSIXct
date/time objects.
Example.R
df <- data.frame( x = c( "2022-01-01 14:45:18", "2022-02-08 10:05:18", "2022-04-01 18:55:18", "2022-08-01 04:45:18" ) ) df$x <- as.POSIXct( df$x, tz = "UTC" ) print( df ) print( class(df$x) )
Output
> print( df ) x 1 2022-01-01 14:45:18 2 2022-02-08 10:05:18 3 2022-04-01 18:55:18 4 2022-08-01 04:45:18 > print( class(df$x) ) [1] "POSIXct" "POSIXt"
Specify Date Format
We can also specify the date format via format
parameter.
Example.R
df <- data.frame( x = c( "2022/01/01", "2022/02/08", "2022/04/01", "2022/08/01" ) ) df$x <- as.POSIXct( df$x, format="%Y/%m/%d" ) print( df ) print( class(df$x) )
Output
> print( df ) x 1 2022-01-01 2 2022-02-08 3 2022-04-01 4 2022-08-01 > print( class(df$x) ) [1] "POSIXct" "POSIXt"
Conclusion
In this R Tutorial, we learned how to convert a data frame column of type string into POSIXct
date/time object, using as.POSIXct()
function, with the help of examples.