1 回答

TA貢獻1852條經驗 獲得超1個贊
我建議將OneHotEncoder其應用于所有分類變量。因此,將其作為單獨的管道。
由于它是數字列的單步過程,因此您可以ColumnTransformer直接使用。
嘗試這個!
from sklearn.impute import SimpleImputer
from sklearn.compose import ColumnTransformer, make_column_transformer
from sklearn.preprocessing import OneHotEncoder
from sklearn.pipeline import Pipeline, make_pipeline
cat_preprocess = make_pipeline(SimpleImputer(strategy="most_frequent"), OneHotEncoder())
ct = make_column_transformer([
("num", SimpleImputer(strategy="median"), ["Pclass", "Age", "SibSp", "Parch", "Fare"]),
("str", cat_preprocess, ["Cabin", "Sex"]),
])
pipeline = Pipeline([('preprocess', ct)])
添加回答
舉報