Skip to main content

Thin Polars IO plugin for the sas7bdat crate

Project description

sas7bdat-polars

A Polars IO plugin for reading SAS7BDAT files, backed by the SIMD-accelerated sas7bdat Rust parser. It registers a native IO source via polars.io.plugins.register_io_source, so scans are lazy and support projection and predicate pushdown straight into the reader.

Installation

pip install sas7bdat-polars

Version constraints

This wheel is tightly coupled to its build environment:

  • Polars is pinned to 1.40.*. The extension shares the Polars Rust ABI (via polars-ffi) with the in-process polars package, so the installed polars must match the version the wheel was built against. A mismatch is undefined behavior, not a graceful error.
  • Built against the CPython stable ABI (abi3, minimum 3.12), so a single cp312-abi3 wheel runs on CPython 3.12 and newer.

Usage

import polars as pl
import sas7bdat_polars as sp

# Lazy scan — returns a LazyFrame; filters/projections push down into the reader.
lf = sp.scan_sas("data.sas7bdat")
df = lf.filter(pl.col("age") > 30).select("name", "age").collect()

# Hydrate value labels from a companion catalog.
lf = sp.scan_sas("data.sas7bdat", catalog_path="formats.sas7bcat")

# Inspect the Arrow schema without reading rows.
schema = sp.schema_for_file("data.sas7bdat")

License

MIT — see the repository for details.

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distributions

No source distribution files available for this release.See tutorial on generating distribution archives.

Built Distributions

If you're not sure about the file name format, learn more about wheel file names.

sas7bdat_polars-0.2.0-cp312-abi3-win_amd64.whl (5.1 MB view details)

Uploaded CPython 3.12+Windows x86-64

sas7bdat_polars-0.2.0-cp312-abi3-manylinux_2_28_x86_64.whl (5.6 MB view details)

Uploaded CPython 3.12+manylinux: glibc 2.28+ x86-64

sas7bdat_polars-0.2.0-cp312-abi3-manylinux_2_28_aarch64.whl (5.1 MB view details)

Uploaded CPython 3.12+manylinux: glibc 2.28+ ARM64

sas7bdat_polars-0.2.0-cp312-abi3-macosx_11_0_arm64.whl (4.7 MB view details)

Uploaded CPython 3.12+macOS 11.0+ ARM64

File details

Details for the file sas7bdat_polars-0.2.0-cp312-abi3-win_amd64.whl.

File metadata

  • Download URL: sas7bdat_polars-0.2.0-cp312-abi3-win_amd64.whl
  • Upload date:
  • Size: 5.1 MB
  • Tags: CPython 3.12+, Windows x86-64
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: uv/0.11.19 {"installer":{"name":"uv","version":"0.11.19","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"Ubuntu","version":"24.04","id":"noble","libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":true}

File hashes

Hashes for sas7bdat_polars-0.2.0-cp312-abi3-win_amd64.whl
Algorithm Hash digest
SHA256 f0af14b7944c089b0b4293ce34c593c6a530cc38a81e0de192b4eb9f1f113279
MD5 14eb9d1c0f38f6aed107c7ab332b1c45
BLAKE2b-256 f167c8a1999b74df08d5f6266de5bc558db9f8b0dc247a333f75095e2d71c015

See more details on using hashes here.

File details

Details for the file sas7bdat_polars-0.2.0-cp312-abi3-manylinux_2_28_x86_64.whl.

File metadata

  • Download URL: sas7bdat_polars-0.2.0-cp312-abi3-manylinux_2_28_x86_64.whl
  • Upload date:
  • Size: 5.6 MB
  • Tags: CPython 3.12+, manylinux: glibc 2.28+ x86-64
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: uv/0.11.19 {"installer":{"name":"uv","version":"0.11.19","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"Ubuntu","version":"24.04","id":"noble","libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":true}

File hashes

Hashes for sas7bdat_polars-0.2.0-cp312-abi3-manylinux_2_28_x86_64.whl
Algorithm Hash digest
SHA256 c4dcc67472910d7eed57468ca6877151dfa2d6e45e5c5f650caa7a1c95ac5325
MD5 26de768bd4982bc44879fe24c1e062f8
BLAKE2b-256 257c86d38291e62e51c9b72e9fe7f533423d6b063c07da63e444aad19084f785

See more details on using hashes here.

File details

Details for the file sas7bdat_polars-0.2.0-cp312-abi3-manylinux_2_28_aarch64.whl.

File metadata

  • Download URL: sas7bdat_polars-0.2.0-cp312-abi3-manylinux_2_28_aarch64.whl
  • Upload date:
  • Size: 5.1 MB
  • Tags: CPython 3.12+, manylinux: glibc 2.28+ ARM64
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: uv/0.11.19 {"installer":{"name":"uv","version":"0.11.19","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"Ubuntu","version":"24.04","id":"noble","libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":true}

File hashes

Hashes for sas7bdat_polars-0.2.0-cp312-abi3-manylinux_2_28_aarch64.whl
Algorithm Hash digest
SHA256 f7a13a37d93f871e4f39f7267d6bc11dfec43d286d3250394829070a31566a25
MD5 d1d20d57cf4ca84042c8ef05e72c5f74
BLAKE2b-256 233d603fd58a7bc477be705793a2cb9a6a69a3eaa92c2d51c6d3fee1cc360412

See more details on using hashes here.

File details

Details for the file sas7bdat_polars-0.2.0-cp312-abi3-macosx_11_0_arm64.whl.

File metadata

  • Download URL: sas7bdat_polars-0.2.0-cp312-abi3-macosx_11_0_arm64.whl
  • Upload date:
  • Size: 4.7 MB
  • Tags: CPython 3.12+, macOS 11.0+ ARM64
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: uv/0.11.19 {"installer":{"name":"uv","version":"0.11.19","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"Ubuntu","version":"24.04","id":"noble","libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":true}

File hashes

Hashes for sas7bdat_polars-0.2.0-cp312-abi3-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 095f1cd913fc236d730679cbe00d2d50e5e61ad80eb43306f64110808ae65740
MD5 d5a687f92abd80ac1b579ab1c92f306e
BLAKE2b-256 02fa7f136c48b085617383bb126b49208cc1f7024cdd61c66b4cd26f08448cd6

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page