我想知道是否有人从统计数据包中了解R的时间序列可以帮助我 .
我目前正在使用stat的ts函数生成时间序列 .
我正在传递ts函数一个数据集(每天有3年的日期和数值),已经解析为十进制日期的开始和结束日期,以及365的频率 . 但是,有一定的缺少日期范围(例如,2016年4月30日至2017年1月2日的日期和值缺失) .
但是,当我查看或绘制时间序列时,我注意到丢失的数据会自动填充值 .
我不确定这些值是如何生成的 .
时间序列功能是否会自动用其数据填写缺少的日期?
谢谢你的帮助,
松鸦
编辑:我原始数据框的一部分示例:
(您可以看到2016-04-30至2017-01-02期间缺少数据)
Dataframe:
date pieceVolume
... | ... | ...
615 | 2016-04-29 | 250.5
616 | 2016-04-30 | 1230.4
617 | 2017-01-02 | 273.2
618 | 2017-01-01 | 26150.5
619 | 2017-01-02 | 232550.7
我的原始数据框有655行,但我的时间序列长度为1079 .
这就是我从数据框生成时间序列的方法:
sts <- ts(test_data$pieceVolume, start=decimal_date(min(as.Date(test_data$date))), end=decimal_date(max(as.Date(test_data$date))), frequency=365)
我的原始代码:
original_data <- readRDS("original_data.rds")
library(plyr)
## Using ddply to average all the pieceVolumes that have the same dates.
test_data <- plyr::ddply(original_data, .(date), function(x) c(pieceVolume=mean(x$pieceVolume)))
library("forecast")
## Generate time-series using test_data
sts <- ts(test_data$pieceVolume, start=decimal_date(min(as.Date(test_data$date))), end=decimal_date(max(as.Date(test_data$date))), frequency=365)
1 回答
尝试