У меня есть набор данных с возрастом, полом, состоянием в браке, статусом работы, нужно классифицировать поле 'target' - да / нет.
Я выбираю классификатор дерева решений, но он дает мне ошибку с полем пола.
ValueError: could not convert string to float: 'M'
Причина в том, что тип данных для категориальных полей должен восприниматься классификатором как объект или категория? Сейчас пол - это строка «M», «F».
Классификатор, дерево решений должно работать с категориальными данными, а не только с числовыми.
Я преобразовал его в категорию:
df['gender'] = df['gender'].astype('category')
Все равно не работает, та же ошибка. Я также проверил на наличие пустых строк и «M», «F» или «F» - ничего подобного, все значения только «M», «F».
Почему случайный лесной классификатор или дерево решений clf нужно преобразовать в float?