这是一种混乱的方式,但我们仍然在这里.考虑一个时间序列:
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)))
Run Code Online (Sandbox Code Playgroud)
此示例数据集用于新西兰地区的空气温度.我想将这个数据集与美国的一个地点进行比较,但在比较北半球和南半球的数据集时,季节将会相反,因此我正在寻找一种合理的方法来改变新西兰数据的季节性模式.与美国数据相同.我试图这样做的一种方法是在数据中取一年中的一天并减去183,然后与美国数据进行比较.因此,我的问题是如问题中所示的日期时间格式,如何从中减去183天并最终得到新的日期时间.因此,对于这个例子,5月的第一天是121年的一天,因此通过减去183天,我们最终在2009年11月结束了一天.可以这样做.我意识到这个问题可能不太清楚,但这是表达我意图的最佳方式.
你在找这个吗?
Date1 - as.difftime(183, unit = "days")
Run Code Online (Sandbox Code Playgroud)
您还可以使用lubridate:
library(lubridate)
Date1 - days(183)
Run Code Online (Sandbox Code Playgroud)