SelectKBest ValueError после логарифмического преобразования целевой переменной

В настоящее время я делаю некоторый анализ набора данных о ценах на жилье в Эймсе, штат Айова. Я успешно обработал данные и удалил все пропущенные значения и т. д., и я собираюсь провести регрессионный анализ. Я хочу построить три модели регрессии: первую с двумя лучшими функциями, вторую с 15 функциями и третью со всеми доступными переменными. Я использую SelectKBest для выбора функций. Моя целевая переменная — «SalePrice», которую я преобразовал в журнал. По какой-то причине я всегда получаю ошибку значения от SelectKBest. Интересно, что если я не преобразовываю «SalePrice» в журнал, все работает нормально. Я проверил dtype моей целевой переменной и, как и ожидалось, это число с плавающей запятой.
Кто-нибудь может мне помочь?
Буду очень признателен! введите здесь описание изображения


person Marcus    schedule 05.09.2018    source источник


Ответы (1)


Ты используешь

SelectKBest(chi2)

Согласно документации chi2:

Параметры:

X : {array-like, sparse matrix}, shape = (n_samples, n_features_in)
    Sample vectors.

y : array-like, shape = (n_samples,)
    Target vector (class labels).

chi2 работает только с задачами классификации, но не с регрессией. Ваша текущая проблема прогнозирования цены продажи является задачей регрессии и, следовательно, ошибкой.

Возможно, попробуйте f_regression вместо chi2

person Vivek Kumar    schedule 06.09.2018