Skip to main content

Python API for OpenML

Project description

    OpenML Logo

    OpenML-Python

    Python Logo

The Python API for a World of Data and More :dizzy:

Latest Release Python Versions Downloads License

Installation | Documentation | Contribution guidelines

OpenML-Python provides an easy-to-use and straightforward Python interface for OpenML, an online platform for open science collaboration in machine learning. It can download or upload data from OpenML, such as datasets and machine learning experiment results.

:joystick: Minimal Example

Use the following code to get the credit-g dataset:

import openml

dataset = openml.datasets.get_dataset("credit-g") # or by ID get_dataset(31)
X, y, categorical_indicator, attribute_names = dataset.get_data(target="class")

Get a task for supervised classification on credit-g:

import openml

task = openml.tasks.get_task(31)
dataset = task.get_dataset()
X, y, categorical_indicator, attribute_names = dataset.get_data(target=task.target_name)
# get splits for the first fold of 10-fold cross-validation
train_indices, test_indices = task.get_train_test_split_indices(fold=0)

Use an OpenML benchmarking suite to get a curated list of machine-learning tasks:

import openml

suite = openml.study.get_suite("amlb-classification-all")  # Get a curated list of tasks for classification
for task_id in suite.tasks:
    task = openml.tasks.get_task(task_id)

:magic_wand: Installation

OpenML-Python is supported on Python 3.8 - 3.13 and is available on Linux, MacOS, and Windows.

You can install OpenML-Python with:

pip install openml

:page_facing_up: Citing OpenML-Python

If you use OpenML-Python in a scientific publication, we would appreciate a reference to the following paper:

Matthias Feurer, Jan N. van Rijn, Arlind Kadra, Pieter Gijsbers, Neeratyoy Mallik, Sahithya Ravi, Andreas Müller, Joaquin Vanschoren, Frank Hutter
OpenML-Python: an extensible Python API for OpenML
Journal of Machine Learning Research, 22(100):1−5, 2021

Bibtex entry:

@article{JMLR:v22:19-920,
  author  = {Matthias Feurer and Jan N. van Rijn and Arlind Kadra and Pieter Gijsbers and Neeratyoy Mallik and Sahithya Ravi and Andreas Müller and Joaquin Vanschoren and Frank Hutter},
  title   = {OpenML-Python: an extensible Python API for OpenML},
  journal = {Journal of Machine Learning Research},
  year    = {2021},
  volume  = {22},
  number  = {100},
  pages   = {1--5},
  url     = {http://jmlr.org/papers/v22/19-920.html}
}

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

openml-0.15.1.tar.gz (146.1 kB view details)

Uploaded Source

Built Distribution

openml-0.15.1-py3-none-any.whl (160.4 kB view details)

Uploaded Python 3

File details

Details for the file openml-0.15.1.tar.gz.

File metadata

  • Download URL: openml-0.15.1.tar.gz
  • Upload date:
  • Size: 146.1 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.1.0 CPython/3.12.0

File hashes

Hashes for openml-0.15.1.tar.gz
Algorithm Hash digest
SHA256 58ae3840b6ea736bb6c69bcbb30d587b817f64db070dc691adb9e09b99018816
MD5 313f6562219d04bceee8a95aefd38bfc
BLAKE2b-256 889b729dc6377bbfdbf0828d5567a335670d4e7c2866065ca4593ab525a5809c

See more details on using hashes here.

File details

Details for the file openml-0.15.1-py3-none-any.whl.

File metadata

  • Download URL: openml-0.15.1-py3-none-any.whl
  • Upload date:
  • Size: 160.4 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.1.0 CPython/3.12.0

File hashes

Hashes for openml-0.15.1-py3-none-any.whl
Algorithm Hash digest
SHA256 14d25afb7a3007a70da26b0d1f46cf93df6f5784c31dd76d6a415066c6051961
MD5 5897a86264e43db173c164ef3fadf7de
BLAKE2b-256 4af3462c16d9e80177d22a036abd3df0f114bf311e566ff906adbb3d82790c20

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page