How to convert Excel serial date to POSIXct in R (i.e. 42309 = 2015-11-01)

If you are converting a column of Excel serial dates in a dataframe:

> df$yourDates <- as.POSIXct(as.Date(df$yourDates, origin = “1899-12-30”)) [1] [POSIXct dates]

… or …

If you are converting a single Excel serial date:

> mydate = as.POSIXct(as.Date(42309, origin = “1899-12-30”))
[1] 2015-11-01

Note: This solution requires the lubridate package.

 
1
Kudos
 
1
Kudos

Now read this

How to identify the length of time between two dates in R

If you are finding the length of time (in hours) between two columns of dates in a dataframe: > df$yourLength <- round(int_length(interval( df$yourStartTime, df$yourEndTIme)) / 60 / 60, digits = 2) [1] [interval lengths] … or … If... Continue →