R - 从日期减去小时数

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了R - 从日期减去小时数相关的知识,希望对你有一定的参考价值。

我正在使用R的Openair包。第一步是导入CSV。这一切都很好,除了我需要将该CSV中的时间/日期移回6个小时。换句话说,例如,将一天的午夜改为前一天的下午6点等。这使得每日平均值计算在上午6点到下午6点而不是0点。

到目前为止,我有:

library(openair)
library(tidyverse)

x <- import(file = "data.csv", file.type = "csv", sep = ";", header.at = 1, data.at = 2, date = "date", date.format = "%d.%m.%Y", time = "hour", time.format = "%H",quote = """)

CSV有一个“日期”列,它存储日期为d.m.Y和一个字段小时,它是小时的数值。

后来我选择了特定年份,但这需要在减法后完成

dataSet <- selectByDate(x, year = 2018)
答案
library(lubridate)

df <- data.frame(datetime = ymd_hms(c("2018-01-01 05:00:00","2018-01-01 06:00:00", 
"2018-01-01 07:00:00", "2018-01-01 08:00:00")))

print(df)
#datetime
# 2018-01-01 05:00:00
# 2018-01-01 06:00:00
# 2018-01-01 07:00:00
# 2018-01-01 08:00:00


df$datetime_adjusted <- df$datetime - hours(6)

print(df)
#datetime   datetime_adjusted
# 2018-01-01 05:00:00 2017-12-31 23:00:00
# 2018-01-01 06:00:00 2018-01-01 00:00:00
# 2018-01-01 07:00:00 2018-01-01 01:00:00
# 2018-01-01 08:00:00 2018-01-01 02:00:00

以上是关于R - 从日期减去小时数的主要内容,如果未能解决你的问题,请参考以下文章

从雪花中的日期时间减去 2 小时

如何从 Pandas 数据框列中的日期时间减去 3 小时?

以纪元毫秒为单位从当前日期减去两天 java [重复]

从 Redshift 中的 sysdate 减去 5 小时

PHP,需要从 DateTime 中减去 12 小时 30 分钟

使用 group_by 时出错,而不是在减去两个日期列 R 时使用排列时出错