【发布时间】:2019-12-04 15:06:25
【问题描述】:
如何将“Fri Jul 26 10:58:25 CEST 2019”之类的字符串正确转换为日期。时区每次都不一样。
as.Date("Fri Jul 26 10:58:25 CEST 2019", "%a %b %d %H:%M:%S CEST %Y")
时区(CEST、CET、...)的正确占位符是什么?或者我怎么能忽略时区?这对我的用例并不重要。
【问题讨论】:
如何将“Fri Jul 26 10:58:25 CEST 2019”之类的字符串正确转换为日期。时区每次都不一样。
as.Date("Fri Jul 26 10:58:25 CEST 2019", "%a %b %d %H:%M:%S CEST %Y")
时区(CEST、CET、...)的正确占位符是什么?或者我怎么能忽略时区?这对我的用例并不重要。
【问题讨论】:
也许我对这个问题感到困惑,但如果时区不重要,那么就省略它?
as.Date("Fri Jul 26 10:58:25 2019", "%a %b %d %H:%M:%S %Y")
或者如果您需要明确说明
as.Date("Fri Jul 26 10:58:25 2019", "%a %b %d %H:%M:%S %Y", tz = "CEST")
使用gsub 删除 CEST:
as.Date(gsub("(:[[:digit:]][[:digit:]]) ([[:alpha:]]*)", "\\1", x), "%a %b %d %H:%M:%S %Y")
【讨论】:
"Fri Jul 26 10:58:25 CEST 2019",忽略或包含它不是他们的选择,它已经存在于他们收到的数据中。
sub 删除时区
gsub 删除时区之后在上面的字符串上调用as.Date 的代码:as.Date(gsub("(:[[:digit:]][[:digit:]]) ([[:alpha:]]*)", "\\1", x), "%a %b %d %H:%M:%S %Y")