我有一张表,其中有两列DATE和Q。
DATE Q
--------------------
2013-01-04 932
2013-01-05 409
2013-01-08 511
2013-01-11 121
2013-01-12 252
2013-01-13 201
2013-01-14 40
2013-01-15 66
2013-01-17 NA
2013-01-18 123
Classes ‘tbl_df’, ‘tbl’ and 'data.frame': 10 obs. of 2 variables:
$ DATE: POSIXct, format: "2013-01-04" "2013-01-05" "2013-01-08" "2013-01-11" ...
$ Q: num 932 409 511 121 252 201 40 66 NA 123 ..
从数据中可以看到频率不规则。第一列中的数据已转换为日期格式,第二列中的数据是数字。因此,我的目的是将该表转换为时间序列对象,以便使用预测包进行进一步的预测。
那么有人可以帮我一些代码将此表转换为ts对象吗?
答案 0 :(得分:1)
time <- seq(as.Date("2018-1-1"),as.Date("2019-1-1"),by=1)
df <- data.frame(Time=Time)
output <- dplyr::left_join(df,YOUR_TABLE,by="DATE")
您的表中的日期列应为名称“ DATE”。因此,当数据丢失时,您现在拥有NA值,并且可以将数据转换为时间序列。我不知道这是否会有所帮助,对我而言有时会有所帮助。也许可以通过一些替代方法解决NA问题。