sklearn - Как построить простой конвеер Pipeline для набора данных?
Описание: сижу на Kaggle на задаче SS Titanic, метки в наборе данных представлены как Boolean тип, поэтому нужно их превратить в числовой тип (1-0). Это я сделал просто напрямую работая с колонкой датафрейма пандаса (Код №1), но ведь это неправильно, нужно сделать конвееры, чтобы потом передавать быстро и эффективно новый набор данных сразу в конвеер.
Пример конвеера беру из книги, но там не очень всё понятно. Вроде как можно создать класс, используя его потом в качестве "ячейки" конвеера, а вроде можно и функцию использовать. Подскажите, пожалуйста.
Вопрос: как сделать простой конвеер, который бы делал замену Boolean меток на числовой тип (1-0)?
# Код №1. dataset["labels"] = dataset["labels"].map(lambda a: 1 if a == True else 0)
# Код №2.
dataset_pipeline = Pipeline([
() # Всё действо как понимаю происходит тут.
])
dataset_pipeline.fit_transform(dataset)
Ответы (1 шт):
Проблема была решена с помощью функции sklearn FunctionTransformer, которая помогает вам преобразовать вашу функцию для использования её в Pipeline.
Мне помог этот ответ: https://stackoverflow.com/a/39429857/16010182