FunctionTransformer
- classsklearn.preprocessing.FunctionTransformer(func=None, inverse_func=None, *, validate=False, accept_sparse=False, check_inverse=True, feature_names_out=None, kw_args=None, inv_kw_args=None)[source]
-
Создаёт преобразователь из произвольной вызываемой функции.
FunctionTransformer передаёт свои аргументы X (и необязательно y) в пользовательскую функцию или объект функции и возвращает результат этой функции. Это полезно для бессостоятельных преобразований, таких как взятие логарифма частот, выполнение пользовательского масштабирования и т. д.
Примечание: если в качестве функции используется лямбда, то полученный преобразователь не будет сохраняемым с помощью pickle.
Добавлен в версии 0.17.
Дополнительная информация в Руководстве пользователя.
- Параметры:
-
- funccallable, по умолчанию=None
-
Вызываемая функция для преобразования. Будет передавать такие же аргументы, как transform, с переданными args и kwargs. Если func равен None, то func будет тождественной функцией.
- inverse_funccallable, по умолчанию=None
-
Вызываемая функция для обратного преобразования. Будет передавать такие же аргументы, как обратное преобразование, с переданными args и kwargs. Если inverse_func равно None, то inverse_func будет тождественной функцией.
- validatebool, по умолчанию=False
-
Указывает, что массив входных данных X должен быть проверен перед вызовом
func. Возможные варианты:- Если False, нет проверки входных данных.
- Если True, то X будет преобразован в двумерный массив NumPy или разреженную матрицу. Если преобразование невозможно, генерируется исключение.
Изменено в версии 0.22: Значение по умолчанию
validateизменено с True на False. - accept_sparsebool, по умолчанию=False
-
Указывает, что func принимает разреженную матрицу в качестве входных данных. Если validate равно False, это не оказывает влияния. В противном случае, если accept_sparse равно false, разреженные матрицы приведут к генерации исключения.
- check_inversebool, по умолчанию=True
-
Проверяет, что применение
funcза которым следуетinverse_funcприводит к исходным входным данным. Это может использоваться для проверки, генерируя предупреждение, когда условие не выполняется.Добавлен в версии 0.20.
- feature_names_outcallable, ‘one-to-one’ или None, по умолчанию=None
-
Определяет список имён признаков, которые будут возвращены методом
get_feature_names_out. Если это ‘one-to-one’, то имена выходных признаков будут равны именам входных признаков. Если это вызываемая функция, она должна принимать два позиционных аргумента: этотFunctionTransformer(self) и массив входных имён признаков (input_features). Она должна возвращать массив выходных имён признаков. Методget_feature_names_outопределён только еслиfeature_names_outне равен None.См.
get_feature_names_outдля получения дополнительной информации.Добавлен в версии 1.1.
- kw_argsdict, по умолчанию=None
-
Словарь дополнительных ключевых аргументов для передачи в func.
Добавлен в версии 0.18.
- inv_kw_argsdict, по умолчанию=None
-
Словарь дополнительных ключевых аргументов для передачи в inverse_func.
Добавлен в версии 0.18.
- Атрибуты:
См. также
MaxAbsScaler-
Масштабирование каждого признака по его максимальному абсолютному значению.
StandardScaler-
Стандартизация признаков путём вычитания среднего значения и масштабирования до единичной дисперсии.
LabelBinarizer-
Бинаризация меток в виде one-vs-all.
MultiLabelBinarizer-
Преобразование между итерируемыми последовательностями итераций и многомерным форматом меток.
Примечания
Если
funcвозвращает выход с атрибутомcolumns, тогда столбцы принудительно устанавливаются в соответствии с выходомget_feature_names_out.Примеры
>>> import numpy as np >>> from sklearn.preprocessing import FunctionTransformer >>> transformer = FunctionTransformer(np.log1p) >>> X = np.array([[0, 1], [2, 3]]) >>> transformer.transform(X) array([[0. , 0.6931...], [1.0986..., 1.3862...]])- fit(X, y=None)[source]
-
Подгонка преобразователя путём проверки X.
Если
validateравноTrue, будет провереноX.- Параметры:
-
-
X{array-like, sparse-matrix} формы (n_samples, n_features) если
validate=Trueиначе любой объект, с которымfuncможет справиться -
Входной массив.
- yИгнорируется
-
Не используется, присутствует здесь для согласованности API по соглашению.
-
X{array-like, sparse-matrix} формы (n_samples, n_features) если
- Возвращает:
-
- selfобъект
-
Экземпляр класса FunctionTransformer.
- fit_transform(X, y=None, **fit_params)[source]
-
Подгонка к данным, затем преобразование.
Подгоняет преобразователь к
Xиyс необязательными параметрамиfit_paramsи возвращает преобразованную версиюX.- Параметры:
-
- Xмассив-подобный формы (n_samples, n_features)
-
Входные образцы.
- yмассив-подобный формы (n_samples,) или (n_samples, n_outputs), по умолчанию=None
-
Значения целевых переменных (None для безнадзорных преобразований).
- **fit_paramsdict
-
Дополнительные параметры подгонки.
- Возвращает:
-
- X_newмассив ndarray формы (n_samples, n_features_new)
-
Преобразованный массив.
- get_feature_names_out(input_features=None)[source]
-
Получить имена выходных признаков для преобразования.
Этот метод определён только если
feature_names_outне равно None.- Параметры:
-
- input_featuresarray-like из str или None, по умолчанию=None
-
Имена входных признаков.
- Если
input_featuresравно None, тогдаfeature_names_in_используется в качестве имён входных признаков. Еслиfeature_names_in_не определено, тогда имена генерируются:[x0, x1, ..., x(n_features_in_ - 1)]. - Если
input_featuresявляется array-like, тогдаinput_featuresдолжно совпадать сfeature_names_in_еслиfeature_names_in_определено.
- Если
- Возвращаемое значение:
-
- feature_names_outndarray из str объектов
-
Имена преобразованных признаков.
- Если
feature_names_outравно ‘one-to-one’, возвращаются имена входных признаков (см.input_featuresвыше). Это требует, чтобыfeature_names_in_и/илиn_features_in_были определены, что делается автоматически, еслиvalidate=True. В качестве альтернативы, вы можете установить их вfunc. - Если
feature_names_outявляется вызываемым объектом, тогда он вызывается с двумя аргументами,selfиinput_features, и его возвращаемое значение возвращается этим методом.
- Если
- get_metadata_routing()[source]
-
Получить маршрутизацию метаданных для этого объекта.
Пожалуйста, проверьте Руководство пользователя о том, как работает механизм маршрутизации.
- Возвращаемое значение:
-
- routingMetadataRequest
-
MetadataRequestобъект, содержащий информацию о маршрутизации.
- get_params(deep=True)[source]
-
Получить параметры этого оцениваемого объекта.
- Параметры:
-
- deepbool, по умолчанию=True
-
Если True, возвращает параметры этого оцениваемого объекта и вложенных под-объектов, являющихся оцениваемыми объектами.
- Возвращаемое значение:
-
- paramsdict
-
Имена параметров, сопоставленные со значениями.
- inverse_transform(X)[source]
-
Преобразовать X с помощью обратной функции.
- Параметры:
-
-
X{array-like, sparse-matrix} размера (n_samples, n_features), если
validate=Trueиначе любой объект, которыйinverse_funcможет обработать -
Входной массив.
-
X{array-like, sparse-matrix} размера (n_samples, n_features), если
- Возвращаемое значение:
-
- X_outarray-like, размера (n_samples, n_features)
-
Преобразованный вход.
- set_output(*, transform=None)[source]
-
Установить контейнер вывода.
См. Вводное руководство по API set_output для примера использования API.
- Параметры:
-
- transform{“default”, “pandas”, “polars”}, по умолчанию=None
-
Настроить вывод
transformиfit_transform.-
"default": Формат вывода преобразователя по умолчанию -
"pandas": Вывод DataFrame -
"polars": Вывод Polars -
None: Конфигурация преобразования не изменена
Добавлен в версии 1.4:
"polars"вариант был добавлен. -
- Возвращаемое значение:
-
- selfэкземпляр оцениваемого объекта
-
Экземпляр оцениваемого объекта.
- set_params(**params)[source]
-
Установить параметры этого оцениваемого объекта.
Метод работает как с простыми оцениваемыми объектами, так и с вложенными объектами (такими как
Pipeline). Последние имеют параметры вида<component>__<parameter>для возможности обновления каждого компонента вложенного объекта.- Параметры:
-
- **paramsdict
-
Параметры оцениваемого объекта.
- Возвращаемое значение:
-
- selfэкземпляр оцениваемого объекта
-
Экземпляр оцениваемого объекта.
- transform(X)[source]
-
Преобразовать X с помощью прямой функции.
- Параметры:
-
-
X{array-like, sparse-matrix} размера (n_samples, n_features), если
validate=Trueиначе любой объект, которыйfuncможет обработать -
Входной массив.
-
X{array-like, sparse-matrix} размера (n_samples, n_features), если
- Возвращаемое значение:
-
- X_outarray-like, размера (n_samples, n_features)
-
Преобразованный вход.
Примеры из галереи
© 2007–2025 The scikit-learn developers
Licensed under the 3-clause BSD License.
https://scikit-learn.org/1.6/modules/generated/sklearn.preprocessing.FunctionTransformer.html