Ошибка при преобразовании непрерывных данных в категориальные данные в Logisti c Регрессия - PullRequest
0 голосов
/ 22 марта 2020

Я использую регрессию Logisti c для моего набора данных, целевая переменная которого имеет значения 0 и 1. Я использовал функцию .replace () и заменил их соответственно.

> data['target']=data['target'].replace({0:"No",1:"yes"})

Код работает нормально. Но когда я моделирую данные,

model_log=sm.Logit(data['target'],data.iloc[:,2:]).fit()

, отображается следующая ошибка:

ValueError: Pandas приведение данных к numpy dtype объекта. Проверьте входные данные с помощью np.asarray (data).

1 Ответ

0 голосов
/ 23 марта 2020

когда вы выбираете данные X, используя ilo c, возвращается pandas фрейм данных. В соответствии с документацией statsmodel , lo git ожидайте X и y в быть похожим на массив Вам необходимо привести кадр данных к требуемому типу данных. Вы можете использовать метод to_ numpy для преобразования кадра данных в массив numpy.

model_log=sm.Logit(data['target'].astype(float),data.iloc[:,2:].to_numpy()).fit()
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...