scikit-learn

A set of python modules for machine learning and data mining

75 个版本 Python >=3.11
安装
pip install scikit-learn
poetry add scikit-learn
pipenv install scikit-learn
conda install scikit-learn
描述

.. -- mode: rst --

|GitHubActions| |Codecov| |CircleCI| |Nightly wheels| |Ruff| |PythonVersion| |PyPI| |DOI| |Benchmark|

.. |GitHubActions| image:: https://github.com/scikit-learn/scikit-learn/actions/workflows/unit-tests.yml/badge.svg? :target: https://github.com/scikit-learn/scikit-learn/actions/workflows/unit-tests.yml?query=branch%3Amain

.. |CircleCI| image:: https://circleci.com/gh/scikit-learn/scikit-learn/tree/main.svg?style=shield :target: https://circleci.com/gh/scikit-learn/scikit-learn

.. |Codecov| image:: https://codecov.io/gh/scikit-learn/scikit-learn/branch/main/graph/badge.svg?token=Pk8G9gg3y9 :target: https://codecov.io/gh/scikit-learn/scikit-learn

.. |Nightly wheels| image:: https://github.com/scikit-learn/scikit-learn/actions/workflows/wheels.yml/badge.svg?event=schedule :target: https://github.com/scikit-learn/scikit-learn/actions?query=workflow%3A%22Wheel+builder%22+event%3Aschedule

.. |Ruff| image:: https://img.shields.io/badge/code%20style-ruff-000000.svg? :target: https://github.com/astral-sh/ruff

.. |PythonVersion| image:: https://img.shields.io/pypi/pyversions/scikit-learn.svg? :target: https://pypi.org/project/scikit-learn/

.. |PyPI| image:: https://img.shields.io/pypi/v/scikit-learn :target: https://pypi.org/project/scikit-learn

.. |DOI| image:: https://zenodo.org/badge/DOI/10.5281/zenodo.17880109.svg? :target: https://zenodo.org/badge/latestdoi/21369/scikit-learn/scikit-learn

.. |Benchmark| image:: https://img.shields.io/badge/Benchmarked%20by-asv-blue :target: https://scikit-learn.org/scikit-learn-benchmarks

.. |PythonMinVersion| replace:: 3.11 .. |NumPyMinVersion| replace:: 1.24.1 .. |SciPyMinVersion| replace:: 1.10.0 .. |JoblibMinVersion| replace:: 1.4.0 .. |NarwhalsMinVersion| replace:: 2.0.1 .. |ThreadpoolctlMinVersion| replace:: 3.5.0 .. |MatplotlibMinVersion| replace:: 3.6.1 .. |Scikit-ImageMinVersion| replace:: 0.22.0 .. |PandasMinVersion| replace:: 1.5.0 .. |SeabornMinVersion| replace:: 0.13.0 .. |PytestMinVersion| replace:: 7.1.2 .. |PlotlyMinVersion| replace:: 5.22.0

.. image:: https://raw.githubusercontent.com/scikit-learn/scikit-learn/main/doc/logos/scikit-learn-logo.png :target: https://scikit-learn.org/

scikit-learn is a Python module for machine learning built on top of SciPy and is distributed under the 3-Clause BSD license.

The project was started in 2007 by David Cournapeau as a Google Summer of Code project, and since then many volunteers have contributed. See the About us <https://scikit-learn.org/dev/about.html#authors>__ page for a list of core contributors.

It is currently maintained by a team of volunteers.

Website: https://scikit-learn.org

Installation

Dependencies


scikit-learn requires:

- Python (>= |PythonMinVersion|)
- NumPy (>= |NumPyMinVersion|)
- SciPy (>= |SciPyMinVersion|)
- Narwhals (>= |NarwhalsMinVersion|)
- joblib (>= |JoblibMinVersion|)
- threadpoolctl (>= |ThreadpoolctlMinVersion|)

=======

Scikit-learn plotting capabilities (i.e., functions start with ``plot_`` and
classes end with ``Display``) require Matplotlib (>= |MatplotlibMinVersion|).
For running the examples Matplotlib >= |MatplotlibMinVersion| is required.
A few examples require scikit-image >= |Scikit-ImageMinVersion|, a few examples
require pandas >= |PandasMinVersion|, some examples require seaborn >=
|SeabornMinVersion| and Plotly >= |PlotlyMinVersion|.

User installation

If you already have a working installation of NumPy and SciPy, the easiest way to install scikit-learn is using pip::

pip install -U scikit-learn

or conda::

conda install -c conda-forge scikit-learn

The documentation includes more detailed installation instructions <https://scikit-learn.org/stable/install.html>_.

Changelog

See the changelog <https://scikit-learn.org/dev/whats_new.html>__ for a history of notable changes to scikit-learn.

Development

We welcome new contributors of all experience levels. The scikit-learn community goals are to be helpful, welcoming, and effective. The Development Guide <https://scikit-learn.org/stable/developers/index.html>_ has detailed information about contributing code, documentation, tests, and more. We've included some basic information in this README.

Important links


- Official source code repo: https://github.com/scikit-learn/scikit-learn
- Download releases: https://pypi.org/project/scikit-learn/
- Issue tracker: https://github.com/scikit-learn/scikit-learn/issues

Source code
~~~~~~~~~~~

You can check the latest sources with the command::

    git clone https://github.com/scikit-learn/scikit-learn.git

Contributing
~~~~~~~~~~~~

To learn more about making a contribution to scikit-learn, please see our
`Contributing guide
<https://scikit-learn.org/dev/developers/contributing.html>`_.

Testing
~~~~~~~

After installation, you can launch the test suite from outside the source
directory (you will need to have ``pytest`` >= |PytestMinVersion| installed)::

    pytest sklearn

See the web page https://scikit-learn.org/dev/developers/contributing.html#testing-and-improving-test-coverage
for more information.

    Random number generation can be controlled during testing by setting
    the ``SKLEARN_SEED`` environment variable.

Submitting a Pull Request

Before opening a Pull Request, have a look at the full Contributing page to make sure your code complies with our guidelines: https://scikit-learn.org/stable/developers/index.html

Project History

The project was started in 2007 by David Cournapeau as a Google Summer of Code project, and since then many volunteers have contributed. See the About us <https://scikit-learn.org/dev/about.html#authors>__ page for a list of core contributors.

The project is currently maintained by a team of volunteers.

Note: scikit-learn was previously referred to as scikits.learn.

Help and Support

Documentation


- HTML documentation (stable release): https://scikit-learn.org
- HTML documentation (development version): https://scikit-learn.org/dev/
- FAQ: https://scikit-learn.org/stable/faq.html

Communication

Main Channels ^^^^^^^^^^^^^

Developer & Support ^^^^^^^^^^^^^^^^^^^^^^

Social Media Platforms ^^^^^^^^^^^^^^^^^^^^^^

Resources ^^^^^^^^^

Citation


If you use scikit-learn in a scientific publication, we would appreciate citations: https://scikit-learn.org/stable/about.html#citing-scikit-learn
版本列表
1.9.0 2026-06-02
1.9.0rc1 2026-05-20
1.8.0 2025-12-10
1.8.0rc1 2025-11-26
1.7.2 2025-09-09
1.7.1 2025-07-18
1.7.0 2025-06-05
1.7.0rc1 2025-05-09
1.6.1 2025-01-10
1.6.0 2024-12-09
1.6.0rc1 2024-11-15
1.5.2 2024-09-11
1.5.1 2024-07-03
1.5.0 2024-05-21
1.5.0rc1 2024-05-06
1.4.2 2024-04-09
1.4.1.post1 2024-02-16
1.4.0 2024-01-18
1.4.0rc1 2023-12-20
1.3.2 2023-10-23
1.3.1 2023-09-21
1.3.0 2023-06-30
1.3.0rc1 2023-06-15
1.2.2 2023-03-09
1.2.1 2023-01-24
1.2.0 2022-12-08
1.2.0rc1 2022-11-28
1.1.3 2022-10-26
1.1.2 2022-08-05
1.1.1 2022-05-19
1.1.0 2022-05-12
1.0.2 2021-12-25
1.0.1 2021-10-25
1.0 2021-09-24
0.24.2 2021-04-28
0.24.1 2021-01-19
0.24.0 2020-12-22
0.23.2 2020-08-04
0.23.1 2020-05-19
0.23.0 2020-05-12
0.22.2 2020-02-28
0.22.2.post1 2020-03-04
0.22.1 2020-01-02
0.22 2019-12-03
0.21.3 2019-07-30
0.21.2 2019-05-24
0.21.1 2019-05-15
0.21.0 2019-05-10
0.20.4 2019-07-30
0.20.3 2019-03-01
0.20.2 2018-12-19
0.20.1 2018-11-23
0.20.0 2018-09-26
0.19.2 2018-07-15
0.19.1 2017-10-23
0.19.0 2017-08-11
0.18.2 2017-06-21
0.18.1 2016-11-13
0.18 2016-09-28
0.17.1 2016-02-18
0.17 2015-11-05
0.16.1 2015-04-14
0.16.0 2015-03-27
0.15.2 2014-11-06
0.15.1 2014-08-28
0.15.0 2014-07-15
0.14.1 2013-08-09
0.14 2013-08-09
0.13.1 2013-02-23
0.13 2013-01-21
0.12.1 2012-10-08
0.12 2012-09-04
0.11 2012-05-08
0.10 2012-01-11
0.9 2011-09-22