【问题标题】:as.POSIXct() produces NA for specific date timesas.POSIXct() 为特定日期时间生成 NA
【发布时间】:2019-10-09 01:26:35
【问题描述】:

我目前正在使用 R 分析大约 40k 条推文。因此,我正在使用 as.POSIXct() 将文本转换为日期。虽然这适用于几乎所有行,但我在集合中有两行导致返回 NA

我已经将它缩小到特定日期的一小时时间跨度(见下文)。也可以更改其他任何内容(年、月等)。

dateFormat <- "%Y-%m-%d %H:%M:%S"

working1 <- as.POSIXct("2014-03-30 01:59:59", format = dateFormat)
### everything in between does not work
working2 <- as.POSIXct("2014-03-30 03:00:00", format = dateFormat)

### These were the original dates:
notWorking1 <- as.POSIXct("2014-03-30 02:39:21", format = dateFormat)
notWorking2 <- as.POSIXct("2014-03-30 02:33:28", format = dateFormat)

我不确定我是否发现了错误,或者这是我的错,因为我还在学习 R。

【问题讨论】:

  • 它对我有用,但我从I already narrowed it down to a one-hour-timespan on a specific date 猜测它是否与您所在时区的夏令时有关?
  • 打得好,Ronak,这肯定是个骗子,因为我也至少回答了这类问题两到三遍......
  • 感谢 Ronak 的提示。你可能是对的,因为在我明确将时区设置为 UTC 之后它就可以工作了。
  • 乍一看,3 月 30 日看起来很可疑 :) 如果一切顺利,我们在 2021 年结束了欧盟的这种夏令时废话

标签: r datetime statistics posixct


【解决方案1】:

正如 Ronak 在 cmets 中指出的,这是 DST 问题。

它对我有用,但我从I already narrowed it down to a one-hour-timespan on a specific date 猜测它是否与您所在时区的夏令时有关?

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2021-05-17
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2022-12-14
    • 2020-11-07
    • 1970-01-01
    相关资源
    最近更新 更多