Ошибка could not convert string to float:
При обучении модели возникает ошибка
Исходный код:
Обучение моделей и вывод показателей качества
for model in models: # Обучение модели model.fit(X_train, y_train) # Предсказание на тестовой выборке y_pred = model.predict(X_test.values) if model.class.name == 'KNeighborsClassifier' else model.predict(X_test)
# Сохранение результатов в словарь
model_results['Model'].append(model.__class__.__name__)
model_results['Accuracy'].append(accuracy_score(y_test, y_pred))
model_results['Precision'].append(precision_score(y_test, y_pred, average='macro'))
model_results['Recall'].append(recall_score(y_test, y_pred, average='macro'))
model_results['F1 Score'].append(f1_score(y_test, y_pred, average='macro'))
# Вывод покахзателей качества
print(f"{model.__class__.__name__}: Общая точность: {accuracy_score(y_test, y_pred):.2f}")
print(f"Точность предсказания по классам: {precision_score(y_test, y_pred, average=None)}")
print(f"Полнота предсказания по классам: {recall_score(y_test, y_pred, average=None)}")
print(f"F1 Score: {f1_score(y_test, y_pred, average=None)}\n")
Выдает ошибку: ValueError: could not convert string to float: 'Nurse'
Что из себя представляет датасет - прикрепляю к вопросу.
Как можно исправить эту ошибку? Спасибо!