首页 > 解决方案 > 导入不带日期的时间序列时(仅 hh:mm:ss)R 决定将所有时间戳设置为 1899-12-31

问题描述

我有两个尝试导入的数据集(xlsx 格式)。这两个数据集包含相对于时间的温度和光照测量值(采用 HH:MM:SS 格式)。

测量是在 22:35:41 - 04:49:41 进行的,但是当时间经过午夜时,日期不会增加。所以日期停留在 1899-12-31。当我尝试绘制它时,我得到了这个: R图

所以这里发生的是第一个数据点出现在情节的末尾,我真的不想显示日期,因为它是错误的(我只想显示 hh:mm:ss 格式)

我希望它看起来像这样(在这个问题中@filbranden的帮助下用 Python 完成): 正确的情节

这是数据集的链接

这是 R 笔记本的链接

标签: rdatedatetimetimestamptime-series

解决方案


我现在已经尝试按照您所说的进行操作,@Roland,并且成功了。

这是代码:

Temperature[Temperature$Time < as.POSIXct("1899-12-31 12:00:00"), "Time"] <- Temperature[Temperature$Time < as.POSIXct("1899-12-31 12:00:00"), "Time"] + 3600 * 24

Light[Light$Time < as.POSIXct("1899-12-31 12:00:00"), "Time"] <- Light[Light$Time < as.POSIXct("1899-12-31 12:00:00"), "Time"] + 3600 * 24

p = ggplot() + geom_line(data = Temperature, aes(x = Time, y = Temperature), color = "blue") + geom_line(data = Light, aes(x = Time, y = Light), color = "red") + xlab('Time') + ylab('Temp/Light')
print(p)

这是情节:

最后的情节


推荐阅读