Spec-Zone.ru › scikit-learn

fetch_openml

sklearn.datasets.fetch_openml(name:str|None=None, *, version:str|int='active', data_id:int|None=None, data_home:str|PathLike|None=None, target_column:str|List|None='default-target', cache:bool=True, return_X_y:bool=False, as_frame:str|bool='auto', n_retries:int=3, delay:float=1.0, parser:str='auto', read_csv_kwargs:Dict|None=None)[source]

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

Наборы данных уникально идентифицируются либо целым идентификатором, либо комбинацией имени и версии (т.е. может быть несколько версий набора данных ‘iris’). Пожалуйста, укажите либо имя, либо data_id (но не оба). В случае, если указано имя, также может быть указана версия.

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

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

Примечание

ЭКСПЕРИМЕНТАЛЬНО

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

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

Строковый идентификатор набора данных. Обратите внимание, что OpenML может содержать несколько наборов данных с одинаковым именем.

versionint или ‘active’, по умолчанию=’active’

Версия набора данных. Может быть указана только в том случае, если также name указан. Если ‘active’, используется самая старая активная версия. Поскольку может быть более одной активной версии набора данных, и эти версии могут фундаментально отличаться друг от друга, настоятельно рекомендуется указать точную версию.

data_idint, по умолчанию=None

Идентификатор набора данных OpenML. Самый точный способ получения набора данных. Если data_id не указан, используется имя (и потенциальная версия) для получения набора данных.

data_homestr или путь, по умолчанию=None

Укажите другую папку для загрузки и кэширования наборов данных. По умолчанию все данные scikit-learn хранятся в подпапках ‘~/scikit_learn_data’.

target_columnstr, список или None, по умолчанию=’default-target’

Укажите имя столбца в данных, который будет использоваться в качестве целевого. Если ‘default-target’, используется стандартный целевой столбец, хранящийся на сервере. Если None, все столбцы возвращаются как данные, а цель — None. Если список (строк), все столбцы с этими именами возвращаются как многоцелевые (Примечание: не все классификаторы scikit-learn могут обрабатывать все типы комбинаций многовыходных данных).

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

Определяет, кэшировать ли загруженные наборы данных в data_home.

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

Если True, возвращает (data, target) вместо объекта Bunch. Более подробная информация о data и target объектах приведена ниже.

as_framebool или ‘auto’, по умолчанию=’auto’

Если True, данные представляют собой pandas DataFrame, включающий столбцы с соответствующими типами данных (числовой, строковый или категориальный). Цель — pandas DataFrame или Series в зависимости от количества целевых столбцов. Bunch будет содержать атрибут frame с целью и данными. Если return_X_y равно True, тогда (data, target) будут pandas DataFrame или Series, как описано выше.

Если as_frame равно ‘auto’, данные и цель будут преобразованы в DataFrame или Series так, как если бы as_frame было установлено в True, если только набор данных не хранится в разреженном формате.

Если as_frame равно False, данные и цель будут массивами NumPy, а data будет содержать только числовые значения, когда parser="liac-arff" где категории указаны в атрибуте categories экземпляра Bunch. Когда parser="pandas", порядковое кодирование не выполняется.

Изменено в версии 0.24: Значение по умолчанию as_frame изменено с False на 'auto' в 0.24.

n_retriesint, по умолчанию=3

Количество попыток повторной загрузки при возникновении ошибок HTTP или тайм-аутах сети. Ошибки со статусом кода 412 не будут повторно загружаться, так как они представляют общие ошибки OpenML.

delayfloat, по умолчанию=1.0

Количество секунд между повторными попытками.

parser{“auto”, “pandas”, “liac-arff”}, по умолчанию=”auto”

Парсер, используемый для загрузки файла ARFF. Реализованы два парсера:

  • "pandas": это наиболее эффективный парсер. Однако для него требуется установка pandas, и он может открывать только плотные наборы данных.
  • "liac-arff": это чистый Python-парсер ARFF, который намного менее эффективен с точки зрения памяти и ЦП. Он обрабатывает разреженные наборы данных ARFF.

Если "auto", парсер выбирается автоматически так, что "liac-arff" выбирается для разреженных наборов данных ARFF, в противном случае "pandas" выбирается.

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

Изменено в версии 1.4: Значение по умолчанию parser изменяется с "liac-arff" на "auto".

read_csv_kwargsdict, по умолчанию=None

Ключевые аргументы, передаваемые в pandas.read_csv при загрузке данных из файла ARFF с использованием парсера pandas. Он может позволить переопределить некоторые параметры по умолчанию.

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

Возвращаемое значение:
dataBunch

Объект, похожий на словарь, с указанными атрибутами.

datanp.array, scipy.sparse.csr_matrix с плавающей точкой или pandas DataFrame

Матрица признаков. Категориальные признаки закодированы как порядковые.

targetnp.array, pandas Series или DataFrame

Целевое значение регрессии или метки классификации, если применимо. Тип данных — float, если числовой, и object, если категориальный. Если as_frame равно True, target является объектом pandas.

DESCRstr

Полное описание набора данных.

feature_namesсписок

Имена столбцов набора данных.

target_names: список

Имена целевых столбцов.

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

categoriesсловарь или None

Сопоставляет каждое имя категориального признака со списком значений, так что значение, закодированное как i, — это i-е в списке. Если as_frame равно True, это None.

detailsсловарь

Дополнительные метаданные из OpenML.

framepandas DataFrame

Присутствует только если as_frame=True. DataFrame с data и target.

(data, target)кортеж, если return_X_y равно True

Примечание

ЭКСПЕРИМЕНТАЛЬНО

Этот интерфейс является экспериментальным, и в последующих выпусках атрибуты могут изменяться без предварительного уведомления (хотя должны быть только незначительные изменения в data и target).

Пропущенные значения в ‘data’ представлены как NaN. Пропущенные значения в ‘target’ представлены как NaN (числовая цель) или None (категориальная цель).

Примечания

Парсеры "pandas" и "liac-arff" могут приводить к различным типам данных в выходных данных. Отличия заключаются в следующем:

  • Парсер "liac-arff" всегда кодирует категориальные признаки как объекты str. В противоположность этому, парсер "pandas" вместо этого выводит тип во время чтения, и числовые категории будут приводиться к целым числам, когда это возможно.
  • Парсер "liac-arff" использует float64 для кодирования числовых признаков, помеченных как ‘REAL’ и ‘NUMERICAL’ в метаданных. Парсер "pandas" вместо этого определяет, соответствуют ли эти числовые признаки целым числам, и использует расширенный тип данных целых чисел pandas.
  • В частности, наборы данных классификации с целочисленными категориями обычно загружаются как такие (0, 1, ...) с парсером "pandas", в то время как "liac-arff" заставит использовать закодированные строками метки классов, такие как "0", "1" и т.д.
  • Парсер "pandas" не будет удалять одиночные кавычки - например, ' - из столбцов строк. Например, строка 'my string' будет сохранена как есть, в то время как парсер "liac-arff" удалит одиночные кавычки. Для категориальных столбцов одиночные кавычки удаляются из значений.

Кроме того, при использовании as_frame=False, парсер "liac-arff" возвращает данные с порядковым кодированием, где категории указаны в атрибуте categories экземпляра Bunch. Вместо этого, "pandas" возвращает массив NumPy, где категории не закодированы.

Примеры

>>> from sklearn.datasets import fetch_openml
>>> adult = fetch_openml("adult", version=2)  
>>> adult.frame.info()  
<class 'pandas.core.frame.DataFrame'>
RangeIndex: 48842 entries, 0 to 48841
Data columns (total 15 columns):
 #   Column          Non-Null Count  Dtype
---  ------          --------------  -----
 0   age             48842 non-null  int64
 1   workclass       46043 non-null  category
 2   fnlwgt          48842 non-null  int64
 3   education       48842 non-null  category
 4   education-num   48842 non-null  int64
 5   marital-status  48842 non-null  category
 6   occupation      46033 non-null  category
 7   relationship    48842 non-null  category
 8   race            48842 non-null  category
 9   sex             48842 non-null  category
 10  capital-gain    48842 non-null  int64
 11  capital-loss    48842 non-null  int64
 12  hours-per-week  48842 non-null  int64
 13  native-country  47985 non-null  category
 14  class           48842 non-null  category
dtypes: category(9), int64(6)
memory usage: 2.7 MB

Примеры из галереи

Основные моменты выпуска scikit-learn 1.4

Основные моменты выпуска scikit-learn 1.2

Основные моменты выпуска scikit-learn 1.1

Основные моменты выпуска scikit-learn 0.22

Поддержка категориальных признаков в градиентном бустинге

Объединение предикторов с помощью стекинга

Функции в гистограммах градиентного бустинга

Шумоподавление изображений с помощью kernel PCA

Инженерия временных признаков

Прогнозирование уровня CO2 на данных Mona Loa с помощью регрессии Гауссова процесса (GPR)

Раннее прекращение стохастического градиентного спуска

Классификация MNIST с использованием многономиальной логистической регрессии + L1

Регрессия Пуассона и потери, отличные от нормального распределения

Регрессия Твиди на страховых случаях

Распространенные ошибки при интерпретации коэффициентов линейных моделей

Графики частной зависимости и индивидуальной условной ожидаемой величины

Важность признаков по перестановке против важности признаков случайного леса (MDI)

Оценка алгоритмов обнаружения выбросов

Представление API set_output

Визуализация с помощью объектов отображения

Настройка порога принятия решения после обучения

Настройка порога принятия решения для задач с разными затратами

Обзор мета-эстиматоров для многоклассовой классификации

Многозначная классификация с помощью цепочки классификаторов

Приближенные ближайшие соседи в TSNE

Визуализация весов MLP на MNIST

Преобразователь столбцов с разными типами данных

Влияние преобразования целевых переменных на регрессионную модель

Сравнение TargetEncoder с другими кодировщиками

© 2007–2025 The scikit-learn developers
Licensed under the 3-clause BSD License.
https://scikit-learn.org/1.6/modules/generated/sklearn.datasets.fetch_openml.html

Spec-Zone.ru

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