【问题标题】:Converting to Date Time Using as.POSIXct使用 as.POSIXct 转换为日期时间
【发布时间】:2017-07-03 11:35:54
【问题描述】:

我有一列“日期时间”。 示例值:2016-12-05-16.25.54.875000

当我导入它时,R 将其读取为因子。

现在,当我通过减少“DateTime”对数据集进行排序时,最大 DateTime 为 2017 年 6 月 23 日。当我使用 DateTime = as.POSIXct(DateTime) 时,它变为 2017 年 6 月 22 日。这是怎么回事?

附:我在 Power BI 中运行这个 R 脚本。

【问题讨论】:

标签: r datetime posixct


【解决方案1】:

所以先来一些 cmets。当您在 R 中读取字符串时,除非您另有说明,否则它们将作为因子导入。您可以使用选项

如果您将数据定义为 R 中的字符串,则尝试 @Disco Superfly 建议的工作

> a <- "2016-12-05-16.25.54.875000"
> as.POSIXct(a, format="%Y-%m-%d-%H.%M.%S") 
[1] "2016-12-05 16:25:54 CET"
> as.POSIXct(a)
[1] "2016-12-05 CET"

不清楚您所说的数据正在更改的事实。你能举一个可重现的例子吗?

总而言之,如果您的日期是其他人已经建议的完美工作的字符串。我想你试图做的比你解释的要多,因此我不明白你在说什么。

【讨论】:

  • 您好,感谢您的回复。当我在 R 中执行 as.POSIXct 时,它可以毫无问题地转换。当我在 Power BI 中使用 R 脚本选项执行相同操作时会出现此问题。
  • 检查此链接thusithamabotuwana.wordpress.com/2016/08/27/… 它可能会有所帮助。 SAS 也是如此,因为它使用不同的来源来计算日期。
猜你喜欢
  • 1970-01-01
  • 2016-11-23
  • 2019-12-27
  • 2021-05-17
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2023-03-26
相关资源
最近更新 更多