r语言 - 如何进行每日预测



我按天为 SALES 进行时间序列。我有按天计算数据的数据集。(格式 01.11.2015-29.11.2015)。下面是示例:

dput
DAY        STORE    ART     SALES
01.11.2015  1534    343533  62.5000
01.11.2015  25039   20490   686.4480
01.11.2015  1612    295206  185.0000
01.11.2015  1053    16406274    32.5000
01.11.2015  1612    49495   143.1196
01.11.2015  961 15309949    50.9000

如何对所有商店和ART进行一次预测,如何将我的分析拆分为两个因素?

#
library('ggplot2')
library('forecast')
library('tseries')

mydat=read.csv("C:/Users/synthex/Downloads/sales.csv", sep=";",dec=",")
View(mydat)
str(mydat)

count_ts = ts(mydat[, c('SALES')])
View(count_ts)
mydat$clean_cnt = tsclean(count_ts)

mydat$cnt_ma = ma(mydat$clean_cnt, order=7) # using the clean count with no outliers
mydat$cnt_ma30 = ma(mydat$clean_cnt, order=30)
count_ma = ts(na.omit(mydat$cnt_ma), frequency=30) 
decomp = stl(count_ma, s.window="periodic")
deseasonal_cnt <- seasadj(decomp)
plot(decomp) 

adf.test(count_ma, alternative = "stationary") 

auto.arima(deseasonal_cnt, seasonal=FALSE)

fit<-auto.arima(deseasonal_cnt, seasonal=FALSE)
tsdisplay(residuals(fit), lag.max=45, main='(1,1,0) Model Residuals')

fit2 = arima(deseasonal_cnt, order=c(1,1,7))

fcast <- forecast(fit2, h=1)

D.Joe,

您没有正确指定start参数。如果你检查 ?ts ,这就是它在文档中关于上述论点的内容。

开始:
第一次观测的时间。单个数字或两个整数的向量,指定自然时间单位和 (以1为基数)的样本数计入时间单位。查看示例 第二种形式的使用。

如果你想在某一天开始,这不是这样做的方法。您可以在此处查看如何管理此特定方案

在 R 中开始每日时间序列

无论如何,Holt Winters不是处理日常数据的最佳选择。使用此方法有什么特别的原因吗?您可以在此处找到一些处理日常数据的方法。

R:霍尔特-温特斯与每日数据(预测包)

假设您的数据实际上是按商店汇总的,并且您想通过单一方法查找所有商店的所有 ART 类别的预测,这是否公平?如果是这种情况,我相信您需要的是 R 中hts包的功能。它将同时提供所有 ART 和 STORE 的预测,并提供绘图功能。您需要的是提供 STORE 下的 ART 的"分组矩阵"以及总销售额假设。如果不知道组结构,就不可能提供示例代码。

相关内容

  • 没有找到相关文章

最新更新