Построение классов данных прогноза ARIMA - диаграмма рассеяния может быть создана только после модификации - PullRequest
0 голосов
/ 14 июля 2020

Я использую ARIMA для создания прогноза положительных результатов на следующие 30 временных шагов на основе примерно 200 наблюдений pos_results_by_date

ar_pos_results = Arima(pos_results_by_date, order = c(1,1,5), include.drift=TRUE)
pos_forecast = forecast(ar_pos_results, h = 30)

Если я затем построю pos_forecast, все будет выглядеть нормально, и я получу стандарт график временного ряда с каждым наблюдением и оценкой на связанном графике:

plot(pos_forecast, type = "l")

Одна проблема с этим прогнозом заключается в том, что он генерирует некоторые отрицательные значения, которые я подверг цензуре, установив все отрицательные значения в среднем прогнозе а нижние границы равны 0:

to_zero = function(x){
if(x < 0){
    return(0)
}
else{
    return(x)
}

}

pos_forecast$mean = sapply(as.vector(pos_forecast$mean), to_zero)
pos_forecast$lower[,1] = sapply(as.vector(pos_forecast$lower[,1]),to_zero)
pos_forecast$lower[,2] = sapply(as.vector(pos_forecast$lower[,2]),to_zero)

Теперь, что бы я ни делал, plot (pos_forecast, type = "l") всегда возвращает разброс точек .

Неужто есть способ заставить эту работу работать?

...