skillfed

scikit-learn-extra

A set of tools for scikit-learn.

scikit-learn-extra v0.3.0 281.4K downloads/30d#8,098 on PyPI205
Permissive license new BSD Active released

What it is and what it does

scikit-learn-extra is a Python extension module that adds machine learning algorithms to scikit-learn that are useful but fall outside scikit-learn's strict inclusion criteria—typically due to novelty or lower citation counts. It maintains API compatibility with scikit-learn, so algorithms work with the same fit/predict interface developers already know.

The package depends on numpy, scipy, and scikit-learn itself, making it a natural fit for projects already using the scikit-learn ecosystem. It provides pre-built wheels for multiple Python versions and platforms (macOS, Linux, Windows), though installation requires compilation support on some systems. The repository is actively maintained and has no known security vulnerabilities.

Use it for:

  • Access clustering algorithms when scikit-learn's built-in options don't fit your problem.
  • Experiment with newer machine learning methods in production code while maintaining scikit-learn compatibility.
  • Extend scikit-learn pipelines with additional estimators that follow the same interface conventions.
  • Use algorithms from recent research papers that haven't yet reached scikit-learn's maturity threshold.

Worth the install?

AI-flagged interpretation of the facts on this page — verify before relying

Extends scikit-learn with additional machine learning algorithms that don't meet scikit-learn's inclusion criteria, such as newer or less-cited methods.

Yes, if you need specific algorithms beyond scikit-learn's core set and are comfortable with a smaller, less-mature project. The permissive BSD license, active maintenance, and scikit-learn-compatible API make it low-risk. However, the latest release was over a year ago—verify that the algorithms you need are stable and well-documented before adopting for critical production work.

Install

scikit-learn-extra on PyPI

pip

pip install scikit-learn-extra

uv

uv add scikit-learn-extra

poetry

poetry add scikit-learn-extra

Installing scikit-learn-extra

Before you install

Medium install friction due to compiled wheel dependencies across multiple Python versions and platforms. Repository is actively maintained with recent commits, though the latest release was over a year ago.

License in practice

Released under new BSD, a permissive license that allows commercial and private use with minimal restrictions—suitable for most projects.

Quickstart

pip install scikit-learn-extra

from scikit_learn_extra.cluster import KMedoids
import numpy as np

model = KMedoids(n_clusters=3)
model.fit(X)

Requires Python >=3.6 and scikit-learn >=0.24 with its dependencies (numpy, scipy).

Verify before relying

  • Which specific algorithms are included and how they differ from scikit-learn's offerings.
  • Performance characteristics and computational overhead compared to standard scikit-learn.
  • Active user community size and support availability beyond the repository.

Package facts

License new BSD (permissive)
Python support supports the current Python release (>=3.6)
Install friction medium — platform-specific wheel
Runtime dependencies 3 — numpy, scipy, scikit-learn
Maintenance actively maintained — 1,236 days since the last release
Last repo commit
First released
Downloads 281,398/month — #8,098 on PyPI (30-day window, as of 2026-08-14)
Known vulnerabilities none known (OSV.dev, checked 2026-08-14)

Evidence: scikit_learn_extra-0.3.0-cp310-cp310-macosx_10_9_x86_64.whl; scikit_learn_extra-0.3.0-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl; scikit_learn_extra-0.3.0-cp310-cp310-win_amd64.whl; scikit_learn_extra-0.3.0-cp311-cp311-macosx_10_9_x86_64.whl; scikit_learn_extra-0.3.0-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl; scikit_learn_extra-0.3.0-cp311-cp311-win_amd64.whl; scikit_learn_extra-0.3.0-cp36-cp36m-macosx_10_9_x86_64.whl; scikit_learn_extra-0.3.0-cp36-cp36m-manylinux1_i686.whl; scikit_learn_extra-0.3.0-cp36-cp36m-manylinux1_x86_64.whl; scikit_learn_extra-0.3.0-cp36-cp36m-manylinux2010_i686.whl; scikit_learn_extra-0.3.0-cp36-cp36m-manylinux2010_x86_64.whl; scikit_learn_extra-0.3.0-cp36-cp36m-win32.whl; scikit_learn_extra-0.3.0-cp36-cp36m-win_amd64.whl; scikit_learn_extra-0.3.0-cp37-cp37m-macosx_10_9_x86_64.whl; scikit_learn_extra-0.3.0-cp37-cp37m-manylinux1_i686.whl; scikit_learn_extra-0.3.0-cp37-cp37m-manylinux1_x86_64.whl; scikit_learn_extra-0.3.0-cp37-cp37m-manylinux2010_i686.whl; scikit_learn_extra-0.3.0-cp37-cp37m-manylinux2010_x86_64.whl; scikit_learn_extra-0.3.0-cp37-cp37m-win32.whl; scikit_learn_extra-0.3.0-cp37-cp37m-win_amd64.whl

Intended Audience :: DevelopersIntended Audience :: Science/ResearchLicense :: OSI ApprovedOperating System :: MacOSOperating System :: Microsoft :: WindowsOperating System :: POSIXOperating System :: UnixProgramming Language :: PythonProgramming Language :: Python :: 3.6Programming Language :: Python :: 3.7Programming Language :: Python :: 3.8Programming Language :: Python :: 3.9Programming Language :: Python :: Implementation :: CPythonTopic :: Scientific/EngineeringTopic :: Software Development

Tags

scikit-learn extensionsadditional machine learning algorithmsscikit-learn contrib algorithmsexperimental ml methodsscikit-learn compatible toolsmachine learning algorithm librarysklearn extra estimators
scikit-learn-extensionmachine-learning-algorithms

More Software Development packages

typing-extensions

Provides backported and experimental type hints…

permissive · top 100 on PyPI

numpy

NumPy provides an N-dimensional array object…

permissive · top 100 on PyPI

fastapi

FastAPI is a Python web framework for building…

permissive · top 100 on PyPI

annotated-doc

Provides a way to document function parameters,…

permissive · top 100 on PyPI

typer

Typer builds command-line applications from…

permissive · top 1,000 on PyPI

distlib

Distlib provides low-level packaging utilities…

permissive · top 1,000 on PyPI

imbalanced-learn

Provides re-sampling techniques to address…

permissive · top 5,000 on PyPI

scikit-learn

scikit-learn provides a comprehensive Python…

permissive · top 1,000 on PyPI

sagemaker-scikit-learn-extension

Extends scikit-learn with additional estimators…

permissive · top 15,000 on PyPI

forestci

Computes confidence intervals and variance…

permissive · top 15,000 on PyPI

azureml-train-core

Provides estimator classes for training machine…

unclear · top 15,000 on PyPI

array-api-extra

Provides extra array manipulation functions…

permissive · top 15,000 on PyPI

scikit-learn-intelex

Accelerates scikit-learn algorithms on CPU and…

permissive · top 15,000 on PyPI

hmmlearn

hmmlearn implements unsupervised learning and…

permissive · top 5,000 on PyPI

opentelemetry-instrumentation-sklearn

Adds distributed tracing instrumentation to…

permissive · top 15,000 on PyPI

spark-sklearn

Distributes scikit-learn model training and…

permissive · top 15,000 on PyPI