2015-02-23 124 views
0

我在R中使用HoltWinters()来拟合模型。我无法理解为什么模型为alpha,beta和gamma赋予零值。在这种情况下做什么?以下是数据和代码。提前致谢。在拟合季节模型时HoltWinters()中的参数值为零

x<-c(2835, 2970, 2565, 2970, 2700, 4995, 3375, 
2430, 2295, 3375, 3780, 1755, 2970, 2835, 
1890, 1485, 3780, 2430, 3780, 1215, 3915, 
1485, 3375, 3510, 2970, 2700, 2025, 3105, 
3645, 2721, 1215, 4995, 2430, 2700, 1620, 
2025, 2430, 3780, 2295, 4860, 1350, 3645, 
6885, 2295, 1350, 2565, 2835, 2970, 2970, 
2970, 4185, 3105, 1080, 2565, 2295, 3105, 
1890, 3386, 3375, 3105, 2565, 2970, 5265, 
5400, 2565, 1890, 3240, 4050, 2160, 4725, 
5805, 6615, 2565, 4455, 1620, 2025, 1620, 
2835, 1485, 4455, 3510, 1215, 2025, 3510, 
3510, 2160, 1755, 1620, 4050, 2295, 2970, 
2108, 3510, 4725, 2565, 5535, 2025, 1080, 
675, 135, 2700, 3904, 2835, 3105, 1755, 
2565, 1755, 2970, 1080, 1755) 

x_ts<-ts(x,frequency=52) 
hw<-hw<-HoltWinters(x_ts,seasonal="multiplicative") 

Output: 
hw 

Holt-Winters exponential smoothing with trend and multiplicative seasonal component. 

Call: 
HoltWinters(x = x_ts, seasonal = "multiplicative") 

Smoothing parameters: 
alpha: 0 
beta : 0 
gamma: 0 

Coefficients: 
     [,1] 
a 3108.2165107 
b  3.6027043 
s1  1.0734921 
s2  0.9859404 
s3  0.8155082 
s4  0.9450738 
... 
+1

你的时间系列似乎是两年多一周的数据。您已经要求HoltWinters查找季节性因素以及alpha和beta,因此它会返回52个季节性系数(s1 ... s52)加上起始值。它首先发现季节性系数,然后显然将剩余的作为季节性因素导致的残差,因此将α和β作为零返回。基本上你需要更多年的数据才能找到alpha和beta。只是为了演示,你可以在x_ts中设置频率= 12。然后HoltWinters会返回12个季节性因素加上alpha和beta。 – WaltS 2015-02-24 14:03:44

回答

0

您的数据不足以适应较大的频率,因此您可以降低频率意味着您将获得非零的alpha值。 例如:

x_ts<-ts(x,frequency=5)