Вот вариант, когда вы вставляете несколько состояний, которые не связаны иерархически, и у вас нет контроллера, доступного для представления. Вы можете использовать фильтр UI-Router includedByState, чтобы проверить ваше текущее состояние на любое количество именованных состояний.
Items
TL; DR: множественные, несвязанные именованные состояния должны применять активный класс к тому же и у вас нет контроллера? Используйте includedByState .
Преобразователь ожидает двумерный массив формы (nxm), где n - количество выборок, а m - число объектов, и если вы посмотрите на форму features
, я представлю, что она отобразит: (m,)
. [ 1119]
Изменение формы массивов
В общем случае для массива объектов формы (n,)
вы можете сделать так, как предлагает код ошибки, и вызвать .reshape(-1,1)
в вашем массиве объектов, -1 позволяет ему выводить дополнительное измерение: форма массива будет (n,m)
, где для случая 1 признака m = 1
.
Склеарн-трансформеры
Выше сказанное, я думаю, есть дополнительные ошибки в вашем коде и понимании.
Я бы напечатал features
на экране и проверил, что это то, что вам нужно, похоже, вы печатаете список всех имен столбцов, кроме sale_price
. Я не знаком с SelectKBest , но для него требуется массив (n,m)
Feature , а не список имен столбцов объектов.
Кроме того, target
должно быть не именем целевого столбца, а массивом формы (n,)
, где его значения являются наблюдаемыми целевыми значениями обучающих экземпляров.
Я бы посоветовал проверить документацию (на которую ранее ссылались), пока вы пишете свой код, чтобы убедиться, что вы используете правильные аргументы и используете функцию по назначению.
Извлечение функций
Ваши данные выглядят в странном формате (словарь вложен в DF-файл pandas). Тем не менее, это явный пример того, как я мог бы извлечь функции из pd.DataFrame
для использования с функциями из среды SKlearn.
housing_data = pd.DataFrame({'age': [1,5,1,10], 'size':[0,1,2,0],
'price':[190,100,50,100]
})
feature_arr = housing_data.drop('price', axis=1).values
target_values = housing_data['price']
Распечатайте feature_arr
и, надеюсь, увидите свою проблему. Обычно тогда вам нужно предварительно обработать данные, чтобы, например, сбросить значения NaN или выполнить масштабирование объекта.