我有一些代码占用了一段时间,然后采取了一定的秒数。一切都很好,除了边缘情况,当你拿走你在午夜结束的秒数。在我发生这种情况时使用的代码中,秒的一部分时间消失了。随后的代码会失败,因为它需要特定格式的时间。
任何想法如何处理这种情况,以便随后的代码不会给出意想不到的结果。
忽略以下时区 - 我只对消失的秒钟感兴趣。
BaseTime <- "2015-03-25 00:01:00"
adjustment <- 30
GMT1 <- strptime(BaseTime,"%Y-%m-%d %H:%M:%S")
GMTadj <- GMT1 - adjustment
GMTadj
# [1] "2015-03-25 00:00:30 EDT"
GMT <- as.POSIXct(strptime(as.character(GMTadj),"%Y-%m-%d %H:%M:%S"),tz = "GMT") GMT
# [1] "2015-03-25 00:00:30 GMT"
adjustment <- 60
GMT1 <- strptime(BaseTime,"%Y-%m-%d %H:%M:%S")
GMTadj <- GMT1 - adjustment
GMTadj
# [1] "2015-03-25 EDT"
GMT <- as.POSIXct(strptime(as.character(GMTadj),"%Y-%m-%d %H:%M:%S"),tz = "GMT")
GMT
# [1] NA
答案 0 :(得分:0)
正如MrFlick所述,如果您在将POSIXct
转换为字符时不喜欢默认格式,则需要在as.character
调用中明确指定格式。
R> as.character(GMTadj, "%Y-%m-%d %H:%M:%S")
[1] "2015-03-25 00:00:00"