polars-ds
Decision gist · record as of 2026-08-14
Yes, if you work with Polars and need inline statistical modeling or ML metrics. The permissive MIT license, minimal dependencies, and active maintenance make it low-risk. Medium install friction (compiled wheels) is typical for performance-critical packages. Beta status is acceptable for exploratory or non-critical workflows; verify stability requirements for production use.AI-flagged interpretation of the facts on this page — verify before relying
Before you install
- Requires Python 3.9+.
- Compiled wheels available for macOS (x86_64, arm64), Linux (x86_64, aarch64), and Windows (x86_64); other platforms may require building from source.
- Medium install friction due to compiled wheels across multiple platforms (x86_64, arm64, Windows).
License · maintenance · safety
permissive license (permissive) — MIT license (permissive) allows commercial and private use without restriction.
last release 2026-06-01 (74 days)
0 known vulnerabilities (OSV.dev, 2026-08-14) · 177,847 downloads/mo, #10,205 on PyPI
Alternatives
Verify before relying
pip install polars-ds
import polars as pl
import polars_ds as pds
df = pl.DataFrame({"x1": [1.0, 2.0], "x2": [3.0, 4.0], "y": [5.0, 6.0]})
result = df.select(pds.lin_reg(pl.col("x1"), pl.col("x2"), target=pl.col("y")))- Whether the package supports GPU acceleration or only CPU computation.
- Performance characteristics compared to scikit-learn or statsmodels for the same operations.
- Stability guarantees given Beta development status.
What it is and what it does
Polars-ds is a Polars extension that brings data science and statistical modeling directly into lazy dataframe expressions. It lets you compute ML metrics, fit regression models, run statistical tests, and calculate string/array distances all within Polars' query engine, avoiding intermediate data copies. The package covers linear regression (with L1/L2 regularization), logistic regression, rolling and recursive regression, statistical tests (t-test, chi-squared, F-test), string distances (Levenshtein, Jaro-Winkler, OSA), and array distances. Models are non-persistent—fit and predict in a single expression—and work alongside Polars' group_by and lazy evaluation.
It requires Python 3.9+ and depends only on polars and typing-extensions. The package is written in Rust for performance and ships as compiled wheels for macOS (x86_64 and arm64), Linux (x86_64 and aarch64), and Windows. It is in Beta status and actively maintained.
Use it for
- Compute ML evaluation metrics (ROC-AUC, log-loss) in parallel across data segments using group_by.
- Fit and predict with linear or logistic regression inline within a Polars expression without materializing intermediate tables.
- Generate polynomial features and produce statsmodels-style regression summaries with coefficients, p-values, and confidence intervals.
- Calculate string edit distances (Levenshtein, Jaro-Winkler) or array distances (squared L2) for fuzzy matching or similarity scoring.
- Run statistical hypothesis tests (t-test, chi-squared, F-test) grouped by category within a single lazy query.
Worth the install?
AI-flagged interpretation of the facts on this page. Verify before relying on it.
Yes, if you work with Polars and need inline statistical modeling or ML metrics.
The permissive MIT license, minimal dependencies, and active maintenance make it low-risk. Medium install friction (compiled wheels) is typical for performance-critical packages. Beta status is acceptable for exploratory or non-critical workflows; verify stability requirements for production use.
Install
polars-ds on PyPI
Before you install
Medium install friction due to compiled wheels across multiple platforms (x86_64, arm64, Windows). Active maintenance with recent release (74 days ago). Minimal runtime dependencies: only polars and typing-extensions.
Requires Python 3.9+. Compiled wheels available for macOS (x86_64, arm64), Linux (x86_64, aarch64), and Windows (x86_64); other platforms may require building from source.
License in practice
MIT license (permissive) allows commercial and private use without restriction.
Quickstart
pip install polars-ds
import polars as pl
import polars_ds as pds
df = pl.DataFrame({"x1": [1.0, 2.0], "x2": [3.0, 4.0], "y": [5.0, 6.0]})
result = df.select(pds.lin_reg(pl.col("x1"), pl.col("x2"), target=pl.col("y")))
Verify before relying
- Whether the package supports GPU acceleration or only CPU computation.
- Performance characteristics compared to scikit-learn or statsmodels for the same operations.
- Stability guarantees given Beta development status.
Package facts
| License | permissive license permissive |
| Python support | Supports the current Python release >=3.9 |
| Install friction | Medium. Platform-specific wheel |
| Runtime dependencies | 2 packagespolarstyping-extensions |
| Maintenance | Actively maintained 74 days since the last release |
| First released | |
| Downloads | 177,847 / month, #10,205 on PyPI 30-day window, as of 2026-08-14 |
| Known vulnerabilities | None known OSV.dev, checked 2026-08-14 |
| Classifiers | Development Status :: 4 - BetaLicense :: OSI Approved :: MIT LicenseProgramming Language :: Python :: Implementation :: CPythonProgramming Language :: Python :: Implementation :: PyPyProgramming Language :: Rust |
Evidence: polars_ds-0.12.0-cp39-abi3-macosx_10_12_x86_64.whl; polars_ds-0.12.0-cp39-abi3-macosx_11_0_arm64.whl; polars_ds-0.12.0-cp39-abi3-manylinux_2_17_x86_64.manylinux2014_x86_64.whl; polars_ds-0.12.0-cp39-abi3-manylinux_2_24_aarch64.whl; polars_ds-0.12.0-cp39-abi3-win_amd64.whl
Tags
Let your AI agent find packages like this
Example. Real query, live index.
You found this page by searching. An agent finds it by wishing: SkillFed indexes 14,416 PyPI packages by what they can do, searchable in plain language.
wish › “polars machine learning extension”
- polars-dsPolars-ds adds data science and machine learning operations to Polars…
- polars-cloudPolars Cloud extends the Polars DataFrame library to run queries on…
- civisPython client library for programmatically interacting with the Civis…
Give your agent the search over MCP, or paste the wish link into any chat.
More Scientific/Engineering packages
NumPy provides an N-dimensional array object and a comprehensive suite of mathematical, linear algebra, Fourier transform, and random number functions for scientific computing in Python.
pandas provides fast, flexible data structures (Series and DataFrame) for loading, cleaning, transforming, and analyzing labeled or relational data in Python.
scipy provides numerical algorithms for mathematics, science, and engineering—including optimization, integration, linear algebra, Fourier transforms, signal and image processing, and ODE solvers—built on numpy arrays.
scikit-learn provides a comprehensive Python library for supervised and unsupervised machine learning, including classification, regression, clustering, dimensionality reduction, and model evaluation tools built on NumPy and SciPy.
Install it if you need to train, evaluate, or deploy supervised or unsupervised learning models.
dill extends Python's pickle module to serialize and deserialize a much wider range of Python objects, including functions, lambdas, classes, and interpreter sessions, to byte streams for storage or network transmission.
Multiprocess is an enhanced fork of Python's standard multiprocessing library that uses dill for better serialization, allowing you to spawn processes with a threading-like API and share complex objects between them.
Install it if you use multiprocessing and encounter pickle serialization limits with lambdas or complex objects.
See also polars · polars-lts-cpu · polars-ols · polars-hash · polars-runtime-64 · polars-runtime-compat · dataframely · polars-runtime-32 · janaf · patito