转换数据帧到时间序列预测中的R

问题描述:

我检索以下列格式从MySQL数据:转换数据帧到时间序列预测中的R

date   newCustomers 
2016-07-27 31 
2016-07-26 3 

数据从日期2015-02-25开始,存在用于每一天的条目。 我想将此数据框转换为时间序列以进行预测。

我试过以下内容: dataTimeSeries <- ts(data, start=c(2015,2,25), frequency=365.25)它给了我一个警告In data.matrix(data) : NAs introduced by coercion。在检查dataTimeSeries中有什么,这是我发现的

  date day 
2016.000 NA 31 
2016.003 NA 3 
2016.005 NA 2 
2016.008 NA 0 

我在做什么错,请指出我的方向是正确的?

UPDATE:作为建议,我想dataTimeSeries <- ts(data$newCustomers, start=c(2015,2,25), frequency=365.25),它给了我下面的结果

Time Series: 
Start = 2015.00273785079 
End = 2015.9993155373 
Frequency = 365.25 
    [1] 31 3 2 0 101 69 8 4 15 3 1 22 47 85 359 6 7 2 134 44 20 61 2 0 4 2373 4243 7 31 11 2 0 25 1689 24 74 
[37] 22 0 1 336 373 14 11 145 7 0 1 19 49 522 19 1 39 1611 9 675 21 1 45 4 156 180 747 265 169 0 0 4 7 3 4 10 
[73] 64 1 3 5 2 13 15 0 6 0 13 2 13 10 5 14 16 28 134 8 2 0 0 9 29 7 79 17 1 4 167 6 64 334 14 0 
[109] 0 13 17 57 66 3 0 0 25 2 4 22 16 2 0 23 23 169 9912 24 8 3 154 3 2 29 29 243 0 6 2 72 66 7 1 0 
[145] 24 208 13 6 7 10 4 54 79 72 9 29 31 208 224 18 50 65 152 50 10 55 107 249 178 3 0 0 627 19 220 20 285 0 1 11 
[181] 26 25 88 9 2 7 64 54 212 295 37 49 19 144 30 78 29 97 210 143 4 294 2 34 642 24 0 0 1 4 0 0 0 0 0 0 
[217] 2 3 9 0 0 62 6 16 0 12 0 21 3 6 5 8 1 1 0 3 40 16 1 0 0 66 0 0 1 8 6 1 14 26 4 4 
[253] 285 4 0 0 0 3 1 0 28 0 0 24 360 0 0 2 3 0 11 294 578 1 4 0 0 19 2 7 10 0 0 1 20 1 59 19 
[289] 2 0 0 9 19 12 4 10 5 4 5 5 7 38 10 5 6 9 18 22 30 28 13 14 22 22 35 12 6 3 3 15 3 3 28 1 
[325] 0 0 7 45 21 14 21 0 0 22 14 17 799 7 0 3 8 20 21 107 75 3 3 39 36 137 42 39 6 16 113 11 6 10 8 6 
[361] 6 8 21 12 81 

这是不正确的。

这应该工作,因为你只需要养活的数据(而不是次),TS():

dataTimeSeries <- ts(data$newCustomers, ...) 

这也有可能是你的数据没有观测之间规则的间隔?时间序列最适用于观测日期之间间隔相等的数据集。您可以看到Analyzing Daily/Weekly data using ts in R用于分析不一定具有等时间间隔的数据的其他方法。

+0

是的,我的数据是有规律的间隔,一个'newCustomers'值一天。当我尝试您的建议时,请检查更新结果。 –