【发布时间】:2022-01-15 03:22:55
【问题描述】:
我正在从 chr 转换为 POSIXct 格式为“%Y-%m-%d %H:%M:%S 但是,数据集中的某些时间没有秒部分 (%S) 所以当我将没有秒数的时间转换为 DateTime 作为空单元格返回 - NA 我如何确保不会发生这种情况。无论是否缺少某些时间部分,我都希望它们全部返回为 DateTime?
这种格式的日期时间 ("%Y-%m-%d %H:%M:%S") 正确返回为 POSIXct
但是这种格式的日期时间(“%Y-%m-%d %H:%M”)返回为 NA
这是用于转换的代码
trips$ended_at <- as.POSIXct(trips$ended_at, format = "%Y-%m-%d %H:%M:%S")
这是一个包含超过一百万个条目的巨大数据集,所以我什至不知道哪些日期时间没有秒部分。
有没有办法让那些没有秒部分的人只能有零和结尾?
例如,2020-29-04 01:57 转换为 POSIXct 时将返回为 2020-29-04 01:57:00
请帮忙!
【问题讨论】:
-
是否总是缺少秒数和仅秒数,或者是否存在分钟/小时等丢失的情况?例如
2020/01/18 15:NA:12或2020/01/18 15 -
我觉得奇怪的是,您以
"29/04/2020"的格式显示日期,然后说"%Y-%m-%d"有效。 -
@rg255 是的,总是缺少几秒钟
-
是的,我的错我会编辑 @r2evans
-
我看到您的编辑,谢谢,但是...
"2020/29/04" != "%Y-%m-%d",问题示例仍然与您对有效方法的断言不一致。无论如何,我的答案(方法 2)中的代码将直接处理其中任何一种格式。
标签: r datetime date-formatting posixct