Ряд ARIMATime из statsmodel, не принимает ввод, ошибка: невозможно объединить объекты 'str' и 'list'
Мой вопрос касается проблемы, с которой я сталкиваюсь при выполнении алгоритма временных рядов ARIMA. Мое приложение обеспечивает ввод в виде словаря (dict является обязательным). Для формы статистики ARIMA statsmodel в качестве формата входных данных требуется массив numy. Поэтому я преобразовал его в numpyArray. Но все же он не принимает это. (Я пытался преобразовать dict в pandas dataframe, а затем использовать numpy array в качестве решения, но это не сработало.) InputData - это любой набор данных временного ряда, содержащий даты. Я пытался использовать набор данных фондового рынка от UCI.
Может кто-нибудь сказать мне, почему это происходит и как решить эту проблему? ARIMA конвертирует данные внутри? Требуется массив numpy, который поставляется. Я думаю, что формат входных данных, который я предоставляю, неправильный. Но что не так? Пожалуйста помоги. Это может быть простой вопрос, но меня это очень беспокоит. Благодарю.
Мой код выглядит так:
def ARIMARun(self, inputData):
fields = inputData.keys()
inputArray = self.convertToNumArray(fields, inputData)
arimaModel = ARIMA(inputArray, order=(5, 1, 0) )
model_fit = arimaModel.fit()
predictions = model_fit.forecast()
def convertToNumArray(fieldList, dataDict):
data = []
for field in fieldList:
data.append(dataDict[field])
data = np.asarray(data).T
return data