Rstudio | df change column from <chr> to <dttm> class | error NA

Hello All,
I am working under the below version and machine
R version 4.0.3 (2020-10-10) -- "Bunny-Wunnies Freak Out"Copyright (C) 2020 The R Foundation for Statistical Computing Platform: x86_64-w64-mingw32/x64 (64-bit))
I have below df
Rows: 426,887
Columns: 6
ride_id <chr> "EACB19130B0CDA4A", "8FED874C809DC021", "789F3C21E472CA96", "C9A388DAC6ABF313", "943BC3CBECCFD6~ started_at "2020-01-21 20:06:59", "2020-01-30 14:22:39", "2020-01-09 19:29:26", "2020-01-06 16:17:07", "20~
ended_at <chr> "2020-01-21 20:14:30", "2020-01-30 14:26:22", "2020-01-09 19:32:17", "2020-01-06 16:25:56", "20~ start_station_id 239, 234, 296, 51, 66, 212, 96, 96, 212, 38, 117, 181, 91, 91, 123, 36, 13, 36, 152, 133, 76, 1~
end_station_id <int> 326, 318, 117, 24, 212, 96, 212, 212, 96, 100, 632, 91, 181, 181, 58, 152, 36, 152, 36, 337, 43~ member_casual "member", "member", "member", "member", "member", "member", "member", "member", "member", "memb~
and I want to change started_at column from (chr) to (dttm) class I failed with below results

Rows: 426,887
Columns: 6
ride_id <chr> "EACB19130B0CDA4A", "8FED874C809DC021", "789F3C21E472CA96", "C9A388DAC6ABF313", "943BC3CBECCFD6~ started_at NA, NA, NA, NA, NA, NA, NA, NA, NA, NA, NA, NA, NA, NA, NA, NA, NA, NA, NA, NA, NA, NA, NA, NA~
ended_at <chr> "2020-01-21 20:14:30", "2020-01-30 14:26:22", "2020-01-09 19:32:17", "2020-01-06 16:25:56", "20~ start_station_id 239, 234, 296, 51, 66, 212, 96, 96, 212, 38, 117, 181, 91, 91, 123, 36, 13, 36, 152, 133, 76, 1~
end_station_id <int> 326, 318, 117, 24, 212, 96, 212, 212, 96, 100, 632, 91, 181, 181, 58, 152, 36, 152, 36, 337, 43~ member_casual "member", "member", "member", "member", "member", "member", "member", "member", "member", "memb~

It gives me NAs results
I try below approaches

Divvy_Trips_Q1 $started_at <- as.POSIXct(Divvy_Trips_Q1 $started_at,format = "%Y%m%d-%H:%M:%S")
and give me NAs results
And also I used
Divvy_Trips_Q1 $started_at <- ymd_hms(Divvy_Trips_Q1 $started_at)
with same results.
I already use
library(lubridate)

Attaching package: ‘lubridate’

The following objects are masked from ‘package:base’:

date, intersect, setdiff, union

Thanks to prompt support me.

M.salah

suppressPackageStartupMessages({
  library(lubridate)
})

example <- "2020-01-21 20:06:59"

ymd_hms(example)
#> [1] "2020-01-21 20:06:59 UTC"
1 Like

Thanks a lot, I confirm it is work but if you please I need to understand the mechanism of this

suppressPackageStartupMessages({library(lubridate)})

It's just to avoid cluttering up the answer with output like

library(lubridate)
#> 
#> Attaching package: 'lubridate'
#> The following objects are masked from 'package:base':
#> 
#>     date, intersect, setdiff, union
1 Like

This topic was automatically closed 7 days after the last reply. New replies are no longer allowed.

If you have a query related to it or one of the replies, start a new topic and refer back with a link.