我按日进行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)
答案 0 :(得分:1)
D.Joe,
您没有正确指定start
参数。如果您在?ts
处查看,这就是文档中有关上述参数的内容。
开始:
第一次观察的时间。单个数字或两个整数的向量,指定自然时间单位和a (基于1)样本数量进入时间单位。请参阅示例 使用第二种形式。
如果你想在特定的一天开始,这不是这样做的方法。您可以在此处了解如何管理此特定方案
starting a daily time series in R
无论如何,Holt Winters不是处理日常数据的最佳选择。您使用此方法有什么特别的原因吗?您可以在此处找到一些处理日常数据的方法。
答案 1 :(得分:0)
假设您的数据实际上是由ART by STORE汇总的,并且您想通过一种方法找到所有STORES的所有ART类别的预测,这是否公平?如果是这种情况,我认为您需要的是R中public welcomeParams: object = {
'%start_link_homepage%': '<a class="ng-link" href="' + this.localize.translateRoute('/').slice(0, -1) + '">',
'%end_link_homepage%': '</a>',
}
ngAfterViewInit(): void {
let self = this;
$('.ng-link').off().on('click', function (e) {
e.preventDefault();
console.log('Ok');
let href = this.href.replace(/^(?:\/\/|[^\/]+)*\//, '');
self.router.navigate([href]);
});
}
软件包的功能。它将同时提供所有ART和STORE的预测,还提供绘图功能。您需要在STORE下提供ART的“分组矩阵”以及TOTAL SALES假设。在不知道组结构的情况下,不可能提供示例代码。