我在.csv文件中有2个日期变量,格式为" 07-JUL-16 06.05.54.000000 AM"。我想在回归模型中使用它们。我应该将这些作为因素或字符读入数据框吗?如何在每种情况下对两个日期进行区分?
答案 0 :(得分:1)
以字符(例如stringsAsFactors=FALSE
或tidyverse函数)读取它们,然后使用as.POSIXct
,例如
as.POSIXct("07-JUL-16 06.05.54.000000 AM",format="%d-%b-%y %I.%M.%OS %p")
## [1] "2016-07-07 06:05:54 EDT"
(我假设您打算采用日 - 月 - 年格式而不是月 - 日 - 格式 - 但实际上我没有任何证据支持这种想法!)
完成此操作后,减去这些值应该可以正常工作(给你一个difftime
的对象) - 但在转换为数字时要小心单位!
对于它的价值,lubridate::ymd_hms
认为它可以猜出格式,但猜错了(假设我猜对了以上:有两位数的年份,如果没有任何年份值大于31,那么几年和几天都无法区分......)