Tools · SPBoucher
Menu

scikit-learn

by scikit-learn developers · Library · also known as sklearn

BSD-licensed Python machine-learning library for classification, regression, clustering, dimensionality reduction, preprocessing and model selection on NumPy and SciPy

BSD-3-Clause licenseFreeOpen sourceLocalSelf-hostable
Visit official site Compare

Link verified Nov 2, 2026

Overview

scikit-learn is the standard Python library for classical (non-deep) machine learning, released under the BSD 3-Clause license and built on NumPy, SciPy and Matplotlib. It implements supervised methods (linear and logistic regression, ridge and lasso, support vector machines, nearest neighbours, decision trees, random forests, gradient boosting), unsupervised methods (k-means, HDBSCAN, hierarchical clustering, PCA, non-negative matrix factorization, manifold learning), preprocessing and feature extraction, and model-selection tooling such as pipelines, cross-validation, grid and randomized search and a broad set of metrics. Its uniform fit/predict/transform API has become a de facto interface that other libraries, including EconML and many time-series packages, adopt.

In research workflows scikit-learn supplies the nuisance-function learners for double machine learning, the prediction baselines in forecasting comparisons and the preprocessing in text and tabular pipelines. It is a CPU library for datasets that fit in memory; deep learning and GPU training belong to PyTorch or JAX, and statistical inference (standard errors, tests) is the domain of statsmodels. Version 1.9.1 is current at the time of writing.

Capabilities

  • Supervised learning: linear models, SVMs, trees, ensembles, nearest neighbours
  • Clustering and dimensionality reduction
  • Preprocessing, feature extraction and imputation
  • Pipelines, cross-validation and hyperparameter search
  • Metrics and model evaluation
  • Consistent estimator API adopted by other libraries

Typical workflows

  1. Nuisance models for double/debiased machine learning
  2. Predictive benchmark against hedonic or econometric models
  3. Text feature extraction for document classification

Strengths

  • Consistent, well-documented API
  • BSD licence and large community
  • Interoperates with pandas and the scientific stack

Limitations

  • No deep learning or GPU support
  • Limited statistical inference output
  • In-memory, single-node

Prerequisites

  • Python with NumPy and SciPy

Who it is for

  • Data scientists
  • Researchers using ML for prediction or nuisance estimation
  • Students learning machine learning

Alternatives & comparison

statsmodels provides inference where scikit-learn provides prediction; PyTorch and JAX cover deep learning and GPU workloads; EconML builds causal estimators on scikit-learn's API.

  • Create ML

    Apple's app and Swift framework for training image, text, sound, tabular and activity models on a Mac without writing training code, exporting directly to Core ML

    ProprietaryFree
  • EconML

    Python library for heterogeneous treatment-effect estimation with machine learning: double ML, doubly robust learners, causal forests, meta-learners, IV and policy learning

    Open sourceFree
  • JAX

    Python library for NumPy-style array computing with composable transformations (jit, grad, vmap, shard_map) compiled through XLA to CPU, GPU and TPU

    Open sourceOpen source
  • PyTorch

    Open-source deep-learning framework with eager tensors, autograd, torch.compile and distributed training, governed by the PyTorch Foundation and the base of most LLM tooling

    Open sourceOpen source
  • statsmodels

    Python library for estimating statistical and econometric models with R-style formulas, rich result summaries and tests: OLS, GLM, discrete choice, ARIMA, state space, VAR and more

    Open sourceFree
Compare scikit-learn with its alternatives →

Sources & verification

Primary sources consulted for this record. Claims are tied to the fields each source supports; the automated link checker re-verifies every URL on a schedule.

Confidence
High
Reviewed
Nov 1, 2026
Links
Verified · Nov 2, 2026

Spotted an error?

Broken link, outdated license, wrong category, or a tool that no longer exists? Tell us; reports are reviewed by the editor.

pandas

pandas development team (NumFOCUS) · DataFrames & array computing

In-depth entry

The standard Python DataFrame library for labeled tabular data, time series and I/O to CSV, Excel, SQL, Parquet and more

BSD-3-ClauseOpen sourceFreeLocalNov 2, 2026

Python

Python Software Foundation · Programming languages & runtimes

In-depth entry

General-purpose, dynamically typed programming language with a large standard library and the dominant ecosystem for data science and machine learning

PSF-2.0Open sourceFreeLocalSelf-hostedBroken

QuantLib

QuantLib project (Luigi Ballabio and contributors) · Financial analysis & investing

In-depth entry

Open-source C++ library for quantitative finance covering instruments, term structures, pricing engines and calendars, with Python and other bindings

BSD-3-ClauseOpen sourceFreeLocalNov 2, 2026

Stata

StataCorp LLC · Mathematical & statistical computing

Commercial statistical software from StataCorp widely used in economics and social science, with editions BE/SE/MP, a command language, Mata and comprehensive PDF manuals

ProprietaryPaidAcademicLocalNov 2, 2026

Lean

Lean FRO · Mathematical & statistical computing

Open-source functional programming language and interactive theorem prover with dependent types, the Mathlib mathematics library and VS Code tooling, stewarded by the Lean FRO

Apache-2.0FreeOpen sourceLocalNov 2, 2026

Positron

Posit Software, PBC · Mathematical & statistical computing

Posit's multi-language data-science IDE built on Code OSS, with first-class R and Python consoles, variables and plots panes, under the Elastic License 2.0

Elastic-2.0FreeLocalNov 2, 2026