Прогнозирование временных рядов в функции r: ts () в пакете прогнозов

В настоящее время я работаю над выборкой данных, которая требует, чтобы я выполнял прогнозирование временных рядов в R на заданном наборе данных, поэтому мне нужно прогнозировать на ежедневной основе. Я получаю следующее сообщение об ошибке.

Ошибка в -.default (x, тренд): нечисловой аргумент бинарного оператора

Мой формат данных

Items               Regions         vDate       QTY
Tractor TT35 4WD    Tiruchengode    2016-01-01  2
Tractor TT35 4WD    Tiruchengode    2016-01-02  7
Tractor TT35 4WD    Tiruchengode    2016-01-03  6
Tractor TT35 4WD    Tiruchengode    2016-01-04  0
Tractor TT35 4WD    Tiruchengode    2016-01-05  6
Tractor TT35 4WD    Tiruchengode    2016-01-06  6
Tractor TT35 4WD    Tiruchengode    2016-01-07  1
Tractor TT35 4WD    Tiruchengode    2016-01-08  6
Tractor TT35 4WD    Tiruchengode    2016-01-09  0
Tractor TT35 4WD    Tiruchengode    2016-01-10  4
Tractor TT35 4WD    Tiruchengode    2016-01-11  4
Tractor TT35 4WD    Tiruchengode    2016-01-12  0
Tractor TT35 4WD    Tiruchengode    2016-01-13  6
Tractor TT35 4WD    Tiruchengode    2016-01-14  7
Tractor TT35 4WD    Tiruchengode    2016-01-15  3

В столбце элементов у меня есть три типа, в столбце регионов 18 регионов, для каждого региона у меня есть три элемента, и для каждого элемента у меня есть данные за два года (с 2016-01-01 по 2017-01-31), мне нужно прогноз столбца QTY на следующий год (2018-01-31)

Я использую приведенный ниже код

   ts_temp = ts(dt_ts[Regions==i & Item==j,]$Data,frequency = 365,start = 
   c(2016,1,1))
   # plot(ts_temp)
   #tsss<-decompose(ts_temp)
   #plot(tsss)
    model_hw = HoltWinters(ts_temp) 

Когда я запускаю model_hw, я получаю указанную выше ошибку.

Любые предложения, пожалуйста,
Заранее спасибо


person Eswaraiah    schedule 22.03.2018    source источник
comment
Можете ли вы поделиться своими данными с помощью dput()? Вы можете разместить свои данные на сайте, например pastebin.com, а затем добавить ссылку на свой вопрос.   -  person Tung    schedule 22.03.2018


Ответы (1)


Следующий скрипт не доставил мне проблем:

library(readr)
dt_ts <- read_csv("~/test.csv")
attach(dt_ts)

i = 'Tiruchengode'
j = 'Tractor TT35 4WD'

ts_temp = ts(dt_ts[Regions==i & Items==j,]$QTY,frequency = 365,start = c(2016,1,1))

model_hw = HoltWinters(ts_temp) 

Это сообщение об ошибке означает, что HoltWinters() пытается выполнить двоичную операцию, например 2 + 2, с чем-то, что не является числом. Попробуйте проверить свои данные, чтобы убедиться, что QTY содержит только числа:

class(dt_ts[Regions==i & Items==j,]$QTY)

должен вернуться:

[1] "integer"
person Will F    schedule 23.03.2018
comment
Обычно не рекомендуется использовать attach в коде (вместо этого используйте with). См. Обсуждения здесь & Проблема с прикреплением - person Tung; 08.04.2018
comment
Мой код был изолированным примером, предназначенным для имитации кода, который он уже показал. Я предполагаю, что это уже было в цикле for. - person Will F; 09.04.2018