这是一种杂乱的方式,但是尽管如此,我们还是继续。考虑一个时间序列为:

Date1 <- seq(from = as.POSIXct("2010-05-01 02:00"),
             to = as.POSIXct("2010-10-10 22:00"), by = 3600)
Dat <- data.frame(DateTime = Date1,
                  x1 = rnorm(length(Date1)))

此示例数据集针对新西兰某个地点的气温。我想将此数据集与美国的位置进行比较,但是当比较北半球和南半球数据集时,季节将相反,因此,我正在寻找一种合理的方法来更改NZ数据的季节性模式与美国数据相同。我要尝试执行此操作的一种方法是,将数据中的一年中的某天减去183,然后与美国数据进行比较。因此,为我的问题提供了一个如问题所示的日期时间格式,如何从中减去183天并得到一个新的日期时间。因此,对于本例来说,五月一日是121年,因此减去183天,我们得出的结果是2009年11月。这是可以完成的。我意识到问题可能不是很清楚,但这是表达我的意图的最佳方式。

最佳答案

您在找这个吗?

Date1 - as.difftime(183, unit = "days")

您也可以使用lubridate:
library(lubridate)
Date1 - days(183)

10-01 15:52