我有tdateIn,dateOut
,我希望将结果dateOut - dateIn
生成为新列。我的问题是我的日期格式:
## format of my date: 20140424_195711000
typeof(test$dateIn); typeof(test$dateOut)
[1] "integer"
[1] "integer"
我尝试了所有内容,但结果或错误导致NA
:
date <- as.Date(as.character(dateIn), format("%Y%m%d %H%M%S"))
> date
[1] NA
as.POSIXct(dateIn, format="%Y%m%d %H%M%S")
Error in as.POSIXct.default(t, format = "%Y%m%d %H%M%S") :
do not know how to convert 't' to class "POSIXct"
我试图直接这样做:
diff = dateOut - dateIn
[1] NA
Warning message:
In Ops.factor(test$STEP_DATE_TIME_OUT[1], test$STEP_DATE_TIME_IN[1]) :
- not meaningful for factors
我不在哪里?在下划线?或者我的变量类型dateIn
和dateOut
?
答案 0 :(得分:2)
x <- factor("20140424_195711000")
typeof(x)
[1] "integer"
正如Roland所说,类型将显示为&#34;整数&#34;当你有因素。格式模式还应该反映输入字符串的模式,而不是您要查找的输出。
strptime("20140424_195711000", "%Y%m%d_%H%M%S")
[1] "2014-04-24 19:57:11 EDT"