gpt4 book ai didi

r - 如何创建从特定日期开始的每日时间序列

转载 作者:行者123 更新时间:2023-12-03 15:30:21 25 4
gpt4 key购买 nike

我正在尝试使用R创建每日时间序列的ts对象,该时间序列从2015年2月24日开始,到2015年4月13日结束。我已经将频率= 7设置为每日数据,但是我找不到找到将确切日期作为开始参数的方法。

最佳答案

我想这就是您想要的,使用'lubridate'中的decimal_date()函数获取每日序列的正确开始时间,并假设您要索引为ts的值的向量称为x,且长度正确:

library(lubridate)
df <- ts(x, start = decimal_date(as.Date("2015-02-24")), frequency = 365)

如果我使用 rnorm()生成适当长度的x,则如下所示:
> df
Time Series:
Start = c(2015, 55)
End = c(2015, 103)
Frequency = 365
[1] 0.4284579 1.9384426 0.1242242 -2.4002789 -0.4064669 0.6945274 -0.5172909 0.4772347 0.8758635 -1.7233406 0.5929249 1.5662611 1.0692173 -0.1354226
[15] 1.1404375 0.7714662 -0.2871663 -5.2720038 -1.7353146 -0.7053329 1.0206803 1.7170262 -0.3469172 0.2594851 2.0371700 -2.1549066 -0.6639050 -0.4912258
[29] -0.3849884 -3.0448583 -1.3317834 1.6173705 0.7176759 -0.8646802 -1.7697016 1.1114061 0.6941131 -0.1942612 -0.1836107 -0.5850649 -1.7449090 -3.3646555
[43] -0.4341833 1.9721407 1.4995265 1.7168002 1.8617295 -3.4578959 1.1639413

请注意,对于每日索引编制,您需要频率= 365,而不是7,这表示每周索引编制。

如果您想要可以在“zoo”中使用的日期向量,可以这样做:
seq(from = as.Date("2015-02-24"), to = as.Date("2015-04-13"), by = 1)

因此,您将创建一个动物园对象,如下所示:
zoo(x, seq(from = as.Date("2015-02-24"), to = as.Date("2015-04-13"), by = 1))

关于r - 如何创建从特定日期开始的每日时间序列,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/31491157/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com