skillfed

paretoset

Compute the Pareto (non-dominated) set, i.e., skyline operator/query.

paretoset v1.2.5 108.2K downloads/30d#12,570 on PyPI69
Permissive license MIT AGING released

What it is and what it does

paretoset identifies the subset of observations that represent the best trade-offs across multiple competing objectives. Given a dataset with multiple dimensions, it returns a boolean mask marking which rows are not dominated by any other row—that is, rows where you cannot improve one objective without worsening another. The package wraps numba, numpy, and pandas to provide efficient computation on tabular data.

Typical use cases include finding hotels that balance price and distance, identifying employees with strong performance-to-salary ratios, or filtering optimization solutions to show only Pareto-efficient candidates. You specify the optimization sense for each dimension (minimize, maximize, or ignore) and receive a mask you can use to filter your original data.

Use it for:

  • Filter hotel listings to show only those that are cheap or close to the beach, eliminating dominated options
  • Identify top-performing salespeople with high sales relative to salary within each department
  • Extract non-dominated solutions from a multi-objective optimization run to show the efficient frontier
  • Analyze product features to find models that are not strictly worse than competitors on all dimensions
  • Rank candidates in hiring by eliminating those who are strictly dominated on all evaluation criteria

Worth the install?

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

Computes the Pareto (non-dominated) set from multi-dimensional data, identifying points that are not worse than any other point across all objectives.

Yes, if you need to filter multi-dimensional data for non-dominated points. The package is stable, has no known vulnerabilities, and installs without friction. The aging maintenance status (446 days since last release) is a minor concern but not a blocker for a mature, focused tool. Install it if your workflow involves skyline queries or Pareto front extraction.

Install

paretoset on PyPI

pip

pip install paretoset

uv

uv add paretoset

poetry

poetry add paretoset

Installing paretoset

Before you install

Low install friction with a pure Python wheel. Maintenance status is aging—last release was 446 days ago—but the repository remains active and the package is marked Production/Stable.

License in practice

MIT license permits unrestricted use, modification, and distribution with minimal attribution requirements.

Quickstart

pip install paretoset

from paretoset import paretoset
import pandas as pd

hotels = pd.DataFrame({"price": [50, 53, 62], "distance": [13, 21, 19]})
mask = paretoset(hotels, sense=["min", "min"])
pareto_hotels = hotels[mask]

Verify before relying

  • Whether performance scales acceptably for datasets with thousands of objectives or millions of rows
  • Whether the aging maintenance status (446 days since last release) signals active development or dormancy

Package facts

License MIT (permissive)
Python support supports the current Python release (>=3.8)
Install friction low — pure-Python wheel
Runtime dependencies 3 — numba, numpy, pandas
Maintenance aging — 446 days since the last release
Last repo commit
First released
Downloads 108,201/month — #12,570 on PyPI (30-day window, as of 2026-08-14)
Known vulnerabilities none known (OSV.dev, checked 2026-08-14)

Evidence: paretoset-1.2.5-py3-none-any.whl

Development Status :: 5 - Production/StableLicense :: OSI Approved :: MIT LicenseProgramming Language :: Python :: 3.10Programming Language :: Python :: 3.11Programming Language :: Python :: 3.12Programming Language :: Python :: 3.13Programming Language :: Python :: 3.9

Tags

pareto set computationskyline querynon-dominated solutionsmulti-objective optimizationpareto frontdominance filteringefficient frontier
optimizationmulti-objectivedata-filtering

More Mathematics packages