2014-05-15 65 views
3

我對過去4年每日基數的產品有需求。這種需求具有季節性季度的圖案,如以下的圖像基於時間序列的日常數據預測但季節性爲季度 - 在R

ploting of ts object

我願做這一數據基於時間序列預測。下面是我的代碼

myts = ts(forecastsku1$Value,frequency=90) 
fit <- stl(myts, s.window="period") 
plot(fit) 
fit <- decompose(myts) 
plot(fit) 

Result of STL

Result of decompose

這裏,而不是4個季節性因素TS創造90季節性因素,這不是我想要的。我想在3個月的時間內應用相同的季節性,然後進行預測。

數據僅供參考

dput(head(forecastsku1,100)) 
structure(list(date = structure(c(14625, 14626, 14627, 14628, 14629, 14630, 14631, 14632, 14633, 14634, 14635, 14636, 14637, 
14638, 14639, 14640, 14641, 14642, 14643, 14644, 14645, 14646, 14647, 14648, 14649, 14650, 14651, 14652, 14653, 14654, 14655, 
14656, 14657, 14658, 14659, 14660, 14661, 14662, 14663, 14664, 14665, 14666, 14667, 14668, 14669, 14670, 14671, 14672, 14673, 
14674, 14675, 14676, 14677, 14678, 14679, 14680, 14681, 14682, 14683, 14684, 14685, 14686, 14687, 14688, 14689, 14690, 14691, 
14692, 14693, 14694, 14695, 14696, 14697, 14698, 14699, 14700, 14701, 14702, 14703, 14704, 14705, 14706, 14707, 14708, 14709, 
14710, 14711, 14712, 14713, 14714, 14715, 14716, 14717, 14718, 14719, 14720, 14721, 14722, 14723, 14724), class = "Date"), 
Value = c(1407, 1413, 1407, 1406, 1401, 1410, 1411, 1416, 1404, 1409, 1414, 1414, 1400, 1421, 1398, 1404, 1397, 1404, 1407, 1409, 1406, 1395, 1397, 
1403, 1412, 1399, 1409, 1393, 1405, 1403, 1406, 1402, 1405, 1386, 1393, 1405, 1397, 1393, 1402, 1402, 1393, 1391, 1410, 1402, 1408, 
1394, 1404, 1398, 1406, 1389, 1401, 1391, 1394, 1384, 1377, 1390, 1395, 1399, 1384, 1397, 1398, 1384, 1377, 1394, 1398, 1394, 1391, 
1403, 1382, 1390, 1385, 1403, 1390, 1388, 1391, 1384, 1392, 1390, 1381, 1387, 1395, 1390, 1388, 1384, 1387, 1395, 1380, 1378, 1383, 
1384, 1232, 1247, 1232, 1248, 1236, 1236, 1231, 1237, 1224, 1236)), 
.Names = c("date", "Value"), row.names = 13150:13249, class = "data.frame") 

誰能幫助我在這種情況下?請讓我知道是否需要更多數據。

myts = ts(forecastsku1$Value,frequency=4) 
fit <- decompose(myts) 
plot(fit) 

結果將是: enter image description here

+0

請提供'dput(head(forecastsku1))'的輸出以使數據具有可重現性。 –

+0

您可能需要先轉換數據。 –

+0

@beginneR - 已添加數據... – vrajs5

回答

2

它創建90季節性因素,因爲你的頻率爲90的TS定義。你需要做的是在ts和period = 4中指定一個開始和結束,以便觀察可以按照你希望的方式分開。如果你可以成功創建一個季節性因子,你可以明顯地預測每季度(4 * 3 = 12)。因此,我認爲這些日期不是這些日期,而是比較清楚的有start = c(2005,1)。這很有用

+0

對不起@rads不工作.... – vrajs5