--- id: pygeos version: "0.14" license: BSD 3-Clause license_treatment: permissive maintenance: dormant --- # pygeos — GEOS wrapped in numpy ufuncs License: permissive · Maintenance: dormant · Downloads: 149.5K/mo ## What it is and what it does PyGEOS is a C/Python library that wraps the open-source GEOS geometry engine to provide NumPy ufuncs for geometric operations. Instead of looping over geometries in Python, PyGEOS performs bulk operations on arrays of geometries with the GIL released, enabling parallel computation and significant performance gains for spatial workflows. The package is designed for developers working with large collections of geometric objects—points, polygons, lines—who need to compute containment, intersection, area, and other topological properties at scale. It integrates directly with NumPy's broadcasting semantics, so operations on geometry arrays feel natural to users familiar with array-oriented Python. However, PyGEOS development was merged into Shapely in December 2021, and active maintenance has shifted to the Shapely repository; PyGEOS 0.14 is the final standalone release, with only backports expected. Use it for: - Batch spatial queries: test whether thousands of points fall within a polygon without explicit Python loops. - Intersection analysis: compute areas of all pairwise intersections between two lists of polygons efficiently. - Geospatial data pipelines: filter or transform large GeoDataFrames by geometric predicates using vectorized operations. - Multithreaded geometry processing: leverage multiple CPU cores to parallelize GEOS computations from a single Python process. ## Worth the install? AI-flagged interpretation of the facts above — verify before relying. PyGEOS wraps GEOS geometry operations in NumPy ufuncs to perform vectorized geometric calculations on arrays of geometries with C-level performance and multithreading support. Yes, if you need high-performance vectorized geometry operations on arrays and are comfortable with a dormant package. PyGEOS 0.14 is stable and receives no known vulnerabilities, but new projects should prefer Shapely 2.0, which incorporates PyGEOS's vectorization natively. Install PyGEOS only if you have an existing codebase relying on it or require its specific API; for new work, Shapely 2.0 is the maintained path forward. ## Install pip install pygeos uv add pygeos poetry add pygeos ## Installing pygeos Before you install: Medium install friction due to compiled C extensions; wheels are available for Python 3.7–3.11 on macOS, Windows, and Linux. The package is dormant—last release was December 2022 and last commit September 2024—but the project was intentionally merged into Shapely 2.0, so active development has moved upstream. License in practice: BSD 3-Clause is permissive; you may use, modify, and distribute PyGEOS freely in commercial and private projects. GEOS itself is licensed under LGPL 2.1, which does not impose additional restrictions on PyGEOS's BSD wrapper. Quickstart: import numpy as np from pygeos import box, contains, points geoms = points(*np.indices((4, 4))) polygon = box(0, 0, 2, 2) result = contains(polygon, geoms) Requires a C compiler and GEOS library at build time; prebuilt wheels are available for common platforms. NumPy must be installed as a runtime dependency. Verify before relying: - Whether PyGEOS 0.14 receives backports from Shapely 2.0 or is truly unmaintained after December 2022. - Performance characteristics compared to Shapely 2.0's native vectorized operations. - Compatibility with recent GEOS versions and whether binary wheels will be rebuilt for newer Python releases. ## Package facts - License: BSD 3-Clause (permissive) - Python support: supports_current - Install friction: medium - Maintenance: dormant - Downloads: 149.5K/month (top 15,000 on PyPI) - Known vulnerabilities: none known ## Tags vectorized geometry operations, numpy geometry functions, GEOS wrapper python, batch spatial calculations, geometry array processing, geometry-processing, spatial-data, vectorized-operations [View on SkillFed](https://skillfed.io/packages/pygeos) · [View on PyPI](https://pypi.org/project/pygeos/)