R 从午夜日期中删除 00:00:00

问题描述 投票:0回答:1

我正在使用 R,并且我有一个从数据库读取日期的代码。但是,我注意到当日期是午夜时(例如“2024-01-01 00:00:00”),R 不会存储时间部分(%H:%M:%S)。

我目前使用的是4.3.2版本,我怀疑此行为可能与版本有关。

您可以使用以下代码片段重现该问题:

datetest <- as.POSIXct("2024-01-01 00:00:00", format = "%Y-%m-%d %H:%M:%S", tz = "CET")
print(datetest)  # Output: "2024-01-01 CET"

datetest <- as.POSIXct("2024-01-01 01:00:00", format = "%Y-%m-%d %H:%M:%S", tz = "CET")
print(datetest)  # Output: "2024-01-01 01:00:00 CET"

我的问题是:如何强制 R 将完整的日期和时间值存储在 POSIXct 类的对象中?

任何见解或解决方案将不胜感激!

r datetime
1个回答
0
投票

它可以存储。这只是输出格式的问题:

datetest <- as.POSIXct("2024-01-01 00:00:00", format = "%Y-%m-%d %H:%M:%S", tz = "CET")

format(datetest, format = "%Y-%m-%d %H:%M:%S")
#> [1] "2024-01-01 00:00:00"

format(datetest, format = "%Y-%m-%d %H:%M:%S") |>
  print()
#> [1] "2024-01-01 00:00:00"

创建于 2024-02-28,使用 reprex v2.1.0

© www.soinside.com 2019 - 2024. All rights reserved.