Ошибка «преобразования строки в число с плавающей точкой» при использовании model.predict () - PullRequest
1 голос
/ 27 мая 2019

Когда я использую model.predict(), возникает следующая ошибка,

ValueError: не удалось преобразовать строку в число с плавающей точкой:

Код горячего кодирования был использован в моем коде следующим образом,

features_df = pd.get_dummies(df, columns=['garage_type', 'city'])

Используемый код предсказания приведен ниже.

sample = [["attached"], ["Richardport"]]
predictedvalue = model.predict(sample)'

Есть предложения по устранению этой ошибки? Спасибо.

Ответы [ 2 ]

1 голос
/ 27 мая 2019

Вам также понадобится преобразовать ваш образец в отдельные столбцы. Это означает, что вы должны проверить новые фиктивные столбцы и преобразовать ваш образец в логический список L, где L [i] = True, если column [i] == 'attach' или column [i] == 'Richardport' и False для всех остальных элементов списка перед вызовом метода .predict (L).

Этот ответ может быть полезен:

Как использовать Pandas get_dummies для прогнозных данных?

1 голос
/ 27 мая 2019

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

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

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...