FeatureUnion
используется, когда вы хотите применить различные виды преобразования к функциям.Может случиться так, что для одного и того же набора функций вы хотите применить несколько типов преобразований и хотите использовать комбинацию всех этих преобразований в качестве новых функций.
Объяснение в документации здесь должно дать вам некоторое представление.
Я думаю, вы запутались после прочтения документации по текущей версии.Ранее FeatureUnion
раньше делал то, что ColumnTransformer
делает в версии 0.20.Сравните последний пример здесь:
с предыдущимДокументация по версии здесь:
Вы заметите сходство.
Вы можете попробовать поиск в Stackoverflow, чтобы найти различные варианты использования FeatureUnion.Если вы все еще не удовлетворены, пожалуйста, не стесняйтесь задавать более конкретные вопросы.Может быть полезно знать, что вы хотите сделать со своим набором данных.
Обновление для комментария :
Количество функций может увеличиваться или уменьшаться.FeatureUnion
не сохранит ваши исходные функции, если вы не сохраните их в преобразовании.
Возьмите этот пример:
estimators = [('linear_pca', PCA(n_components=5)),
('kernel_pca', KernelPCA(n_components=10))]
combined = FeatureUnion(estimators)
Предполагая, что ваши исходные данные имеют 100 функций.Вышеуказанный FeatureUnion вернет только 15 новых функций.
PCA получит все ваши 100 функций и преобразует их, чтобы сохранить только 5 компонентов, которые будут возвращены в FeatureUnion.
Аналогично,KernelPCA также получит все ваши 100 функций и сохранит 10 компонентов в преобразованных данных.
FeatureUnion просто объединит эти 5 и 10 функций, чтобы вернуть вам 15 новых функций.