R语言 从日期中减去小时数[重复]

dtcbnfnu  于 2023-01-06  发布在  其他
关注(0)|答案(1)|浏览(136)
    • 此问题在此处已有答案**:

Subtracting time from Sys.time()(3个答案)
十小时前关门了。
我正在使用R的Openair包。第一步是导入CSV。它工作正常,除了我需要将CSV中的时间/日期向后移动6小时。换句话说,例如将一天的午夜更改为前一天的下午6点等。这是为了使日平均值计算为上午6点到6点,而不是0 - 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有一个"date"列,它将日期存储为d.m. Y,还有一个hour字段,它是小时的数值。
稍后,我选择一个特定的年份,但这需要在减法之后完成

dataSet <- selectByDate(x, year = 2018)
monwx1rj

monwx1rj1#

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

相关问题