Ошибка значения при подборе данных с помощью метода OLS statsmodel
Я пытаюсь сопоставить свои данные с методом OLS модели статистики. Следуя руководству, импортировал все необходимые библиотеки;
from scipy import stats
import statsmodels.formula.api as sm
import numpy
import pandas
import matplotlib.pyplot as plt
import statsmodels.api as sm
Затем определил все имена переменных из данных X_train;
variable_names = [
'Block',
'Acreage',
'dist_Kyanuuna_TC',
'dist_Busunju_TC',
'dist_Namungo_TC',
'dist_Kitalya_TC',
'dist_Kabindula_TC',
'dist_Namayumba_HC',
'dist_BlueStarJr_Sch',
'dist_Kyanuuna_HS',
'dist_Busunju_Col',
'Central_P',
'years',
'Use_Agric_Farm',
'Use_Res',
'Use_Res_Agric']
Затем включил в формуляр переменную соседства, для которой должны быть созданы и подогнаны двоичные фиктивные переменные без перехвата.
f = 'Value ~ ' + ' + '.join(variable_names) + ' + neighborhood - 1'
И, наконец, подогнали данные, как показано ниже;
model2 = sm.OLS(f, data=X_train).fit()
print(m3.summary2())
Однако при этом возникает ошибка;
ValueError: unrecognized data structures: <class 'str'> / <class 'NoneType'>
Но я не смог понять, в чем может быть проблема. Мы будем очень признательны за любые подсказки о том, как к этому подойти. Спасибо.
1 ответ
Как написано в документе здесь , это
ols
вместо
OLS
Обновление: в разделе импорта вы используете оба
sm
для двух разных пакетов. Удаление первого должно сработать.