在R中创建ts对象

3

我只是刚开始在R中尝试时间序列,所以我在第一个障碍上就失败了!我有一组日温度读数的向量(没有日期戳),我正在努力创建这样一个对象。

data<-rnorm(3650, m=10, sd=2)
data_ts<-as.ts(data, frequency=365, start=c(1919, 1))
attributes(data_ts)
dcomp<-decompose(data_ts, type=c("additive"))

我认为这段代码应该指示R制作一个每天测量(频率=365)的ts对象,起始日期为1919年1月1日。我不理解decompose命令中的错误消息,我感觉我没有正确创建ts对象,因为data_ts$tsp看起来不正确!

1个回答

2
data <- rnorm(3650, m=10, sd=2)
# change is below, use ts() to create time series
data_ts <- ts(data, frequency=365, start=c(1919, 1))
attributes(data_ts)
dcomp<-decompose(data_ts, type=c("additive"))
plot(dcomp)

生成:

时间序列分解


为什么频率等于365,因为每四年有一个闰年,每年实际上不是365.25天吗? - MikeTP
@MikeTP:当然,从技术上讲你是正确的。在ts()中,“frequency”参数是指“每个时间单位的观测次数”,而不是实际的时间周期。在这个例子中,这个问题并没有真正的影响。 - daedalus

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接