gpt4 book ai didi

r - 如何在R中使用strptime()保持午夜(00:00h)?

转载 作者:行者123 更新时间:2023-12-04 10:35:19 24 4
gpt4 key购买 nike

我有一个数据框df,它的日期因子变量的格式如下:

2015-12-15 10:00:00
2015-12-19 12:00:00
2015-12-20 20:00:00


它是每小时数据。在午夜00:00:00时出现问题,因为它没有出现在小时中。它只是说:

21/12/2015


因此,正如您所看到的,它只表示日期,而没有小时。
因此,我使用strptime使用以下命令将其转换为日期格式:

df$date <- strptime(df$date,"%d/%m/%Y %H:%M")


所有时间和日期都可以正常工作,午夜00:00:00的任何一天除外,它返回:

NA


我一直在寻找StackOverflow和其他论坛上的以前的帖子,对此我会非常感激,但是我还没有设法解决这个特定问题的解决方案。

最佳答案

从R的strptime文档(添加了重点):

格式
字符串。如果任何元素的时间分量不是午夜,则格式方法的默认值为“%Y-%m-%d%H:%M:%S”,否则为“%Y-%m-%d”。如果设置了options(“ digits.secs”),则最多可打印指定数目的数字,持续几秒钟。

因此信息仍然存在,您只需要format即可将其与时间分量一起打印出来。

> midnight <- strptime("2015-12-19 00:00:00","%Y-%m-%d %H:%M")
> midnight
[1] "2015-12-19 EST"
> format(midnight,"%Y/%m/%d %H:%M")
[1] "2015/12/19 00:00"

关于r - 如何在R中使用strptime()保持午夜(00:00h)?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/37089536/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com