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.