Spec-Zone.ru › scikit-learn

RobustScaler

classsklearn.preprocessing.RobustScaler(*, with_centering=True, with_scaling=True, quantile_range=(25.0, 75.0), copy=True, unit_variance=False)[source]

Масштабирование признаков с использованием статистики, устойчивой к выбросам.

Этот масштабировщик удаляет медиану и масштабирует данные в соответствии с диапазоном квантилей (по умолчанию IQR: межквартильный размах). IQR — это диапазон между первым квартилем (25-й квантиль) и третьим квартилем (75-й квантиль).

Центрирование и масштабирование происходят независимо для каждого признака путем вычисления соответствующей статистики на выборках в обучающей выборке. Медиана и межквартильный размах затем сохраняются для использования на последующих данных с помощью метода transform.

Стандартизация набора данных является распространенной предварительной обработкой для многих оценок машинного обучения. Обычно это делается путем удаления среднего значения и масштабирования до единичной дисперсии. Однако выбросы часто могут отрицательно повлиять на выборочное среднее / дисперсию. В таких случаях использование медианы и межквартильного размаха часто дает лучшие результаты. Для визуализации примера и сравнения с другими масштабировщиками см. Сравнение RobustScaler с другими масштабировщиками.

Добавлен в версии 0.17.

Подробнее см. в Руководстве пользователя.

Параметры:
with_centeringbool, по умолчанию=True

Если True, центрировать данные перед масштабированием. Это приведет к тому, что transform выдаст исключение при попытке применения к разреженным матрицам, поскольку центрирование предполагает создание плотной матрицы, которая в обычных случаях, вероятно, будет слишком большой, чтобы поместиться в оперативной памяти.

with_scalingbool, по умолчанию=True

Если True, масштабировать данные до межквартильного размаха.

quantile_rangeкортеж (q_min, q_max), 0.0 < q_min < q_max < 100.0, по умолчанию=(25.0, 75.0)

Диапазон квантилей, используемый для вычисления scale_. По умолчанию он равен IQR, т.е. q_min — первый квантиль, а q_max — третий квантиль.

Добавлен в версии 0.18.

copybool, по умолчанию=True

Если False, попытаться избежать копирования и выполнить масштабирование на месте вместо этого. Это не гарантируется, что всегда будет работать на месте; например, если данные не являются массивом NumPy или матрицей scipy.sparse CSR, может быть возвращена копия.

unit_variancebool, по умолчанию=False

Если True, масштабировать данные так, чтобы нормально распределенные признаки имели дисперсию 1. В общем случае, если разность между значениями x q_max и q_min для стандартного нормального распределения больше 1, набор данных будет уменьшен. Если меньше 1, набор данных будет увеличен.

Добавлен в версии 0.24.

Атрибуты:
center_массив чисел с плавающей точкой

Значение медианы для каждого признака в обучающей выборке.

scale_массив чисел с плавающей точкой

Межквартильный размах (масштабированный) для каждого признака в обучающей выборке.

Добавлен в версии 0.17: scale_ атрибут.

n_features_in_int

Количество признаков, увиденных во время fit.

Добавлен в версии 0.24.

feature_names_in_массив формы (n_features_in_,)

Имена признаков, увиденные во время fit. Определяются только тогда, когда X имеет имена признаков, которые все являются строками.

Добавлен в версии 1.0.

См. также

robust_scale

Эквивалентная функция без API-интерфейса оценщика.

sklearn.decomposition.PCA

Далее удаляет линейную корреляцию между признаками с помощью ‘whiten=True’.

Примечания

https://en.wikipedia.org/wiki/Median https://en.wikipedia.org/wiki/Interquartile_range

Примеры

>>> from sklearn.preprocessing import RobustScaler
>>> X = [[ 1., -2.,  2.],
...      [ -2.,  1.,  3.],
...      [ 4.,  1., -2.]]
>>> transformer = RobustScaler().fit(X)
>>> transformer
RobustScaler()
>>> transformer.transform(X)
array([[ 0. , -2. ,  0. ],
       [-1. ,  0. ,  0.4],
       [ 1. ,  0. , -1.6]])
fit(X, y=None)[source]

Вычислить медиану и квантили для использования при масштабировании.

Параметры:
X{array-like, sparse matrix} of shape (n_samples, n_features)

Данные, используемые для вычисления медианы и квантилей, используемых для последующего масштабирования по оси признаков.

yИгнорируется

Не используется, присутствует здесь для соответствия API по соглашению.

Возвращает:
selfобъект

Обученный масштабировщик.

fit_transform(X, y=None, **fit_params)[source]

Обучить на данных, затем преобразовать их.

Обучает преобразователь на X и y с необязательными параметрами fit_params и возвращает преобразованную версию X.

Параметры:
Xarray-like of shape (n_samples, n_features)

Входные образцы.

yarray-like of shape (n_samples,) or (n_samples, n_outputs), по умолчанию=None

Целевые значения (None для неконтролируемых преобразований).

**fit_paramsdict

Дополнительные параметры обучения.

Возвращает:
X_newndarray array of shape (n_samples, n_features_new)

Преобразованный массив.

get_feature_names_out(input_features=None)[source]

Получить имена выходных признаков для преобразования.

Параметры:
input_featuresarray-like of str or None, по умолчанию=None

Входные признаки.

  • Если input_features равен None, то feature_names_in_ используется в качестве имен признаков. Если feature_names_in_ не определен, тогда генерируются следующие имена входных признаков: ["x0", "x1", ..., "x(n_features_in_ - 1)"].
  • Если input_features — массив, то input_features должен совпадать с feature_names_in_, если feature_names_in_ определен.
Возвращает:
feature_names_outndarray of str objects

Также, как входные признаки.

get_metadata_routing()[source]

Получить маршрутизацию метаданных этого объекта.

Пожалуйста, ознакомьтесь с Руководством пользователя о том, как работает механизм маршрутизации.

Возвращает:
маршрутизацияMetadataRequest

MetadataRequest объект, содержащий информацию о маршрутизации.

get_params(deep=True)[source]

Получить параметры этого объекта.

Параметры:
deepbool, по умолчанию=True

Если True, вернёт параметры этого объекта и вложенных под-объектов, являющихся объектами.

Возвращает:
параметрыdict

Имена параметров, сопоставленные со своими значениями.

inverse_transform(X)[source]

Возвращает данные к исходному виду.

Параметры:
X{array-like, sparse matrix} с формой (n_samples, n_features)

Преобразованные данные, которые нужно преобразовать обратно.

Возвращает:
X_tr{ndarray, sparse matrix} с формой (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{array-like, sparse matrix} с формой (n_samples, n_features)

Данные, используемые для масштабирования по указанной оси.

Возвращает:
X_tr{ndarray, sparse matrix} с формой (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.RobustScaler.html

Spec-Zone.ru

Настройки Оффлайн Что нового Помощь О нас
Spec-Zone .ru
спецификации, руководства, описания, API