| | |
| | | |
| | | // 构造 DateTime 对象 |
| | | DateTime dateTime = new DateTime(DateTime.Now.Year, month, day, hour, 0, 0); |
| | | ssaInput.Add(new SSAInput { Time = dateTime, Value = (float)item.RealValue }); |
| | | ssaInput.Add(new SSAInput { Time = dateTime, Value = (float)item.RealDifferenceValue }); |
| | | } |
| | | ssaInput = ssaInput.OrderBy(x => x.Time).ToList(); |
| | | List<Tuple<DateTime, double>> tupleList = ssaInput |
| | | .Select(input => Tuple.Create(input.Time, (double)input.Value)) |
| | | .ToList(); |
| | | var predictdata = SSAPredictHelper.Predict(tupleList, 3600, 10, 3600, (float)0.99, 48); |
| | | var predictdata = SSAPredictHelper.Predict(tupleList, 3600, 10, 3600, (float)0.98, 48); |
| | | |
| | | foreach (var item in predictdata) |
| | | { |
| | | int dayHour = int.Parse(string.Format("{0:00}{1:00}{2:00}", item.DateTime.Month, item.DateTime.Day, item.DateTime.Hour)); |
| | | waterPredictRecords.Add(new Model.WaterPredictRecord { DayHour = dayHour, PredictTime = DateTime.Now, LastPredictValue = Math.Round(item.Total, 1) }); |
| | | waterPredictRecords.Add(new Model.WaterPredictRecord { DayHour = dayHour, PredictTime = DateTime.Now, LastPredictValue = Math.Round(item.Total, 0) }); |
| | | } |
| | | bll.Inserts(waterPredictRecords); |
| | | LogHelper.Info("---预测今明两天数据"); |
| | | } |
| | | } |
| | | } |