Skip to main content

A data frame and data grammar library

Project description

Tabeline

Tabeline is a data frame and data grammar library. You write the expressions in strings and supply them to methods on the DataFrame class. The strings are parsed by Parsita and converted into Polars for execution.

Tabeline draws inspiration from dplyr, the data grammar of R's tidyverse, especially for its methods names. The filter, mutate, group_by, and summarize methods should all feel familiar. But Tabeline is as proper a Python library as can be, using methods instead of pipes, like is standard in R.

Tabeline uses Polars under the hood, but adds a lot of handling of edge cases from Polars, which otherwise result in crashes or behavior that is not type stable.

See the Documentation for the full user guide.

Installation

It is recommended to install Tabeline from PyPI using pip.

pip install tabeline

Motivating example

from tabeline import DataFrame

# Construct a data frame using clean syntax
# from_csv, from_pandas, and from_polars are also available 
df = DataFrame(
    id=[0, 0, 0, 0, 1, 1, 1, 1, 1],
    t=[0, 6, 12, 24, 0, 6, 12, 24, 48],
    y=[0, 2, 3, 1, 0, 4, 3, 2, 1],
)

# Use data grammar methods and string expressions to define
# transformed data frames
analysis = (
    df
    .filter("t <= 24")
    .group_by("id")
    .summarize(auc="trapz(t, y)")
)

print(analysis)
# shape: (2, 2)
# ┌─────┬──────┐
# │ id  ┆ auc  │
# │ --- ┆ ---  │
# │ i64 ┆ f64  │
# ╞═════╪══════╡
# │ 0   ┆ 45.0 │
# ├╌╌╌╌╌┼╌╌╌╌╌╌┤
# │ 1   ┆ 63.0 │
# └─────┴──────┘

Project details


Download files

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

Source Distribution

tabeline-0.6.0.tar.gz (135.0 kB view details)

Uploaded Source

Built Distributions

tabeline-0.6.0-cp313-cp313-win_amd64.whl (11.4 MB view details)

Uploaded CPython 3.13Windows x86-64

tabeline-0.6.0-cp313-cp313-manylinux_2_39_x86_64.whl (13.1 MB view details)

Uploaded CPython 3.13manylinux: glibc 2.39+ x86-64

tabeline-0.6.0-cp313-cp313-manylinux_2_39_aarch64.whl (12.3 MB view details)

Uploaded CPython 3.13manylinux: glibc 2.39+ ARM64

tabeline-0.6.0-cp313-cp313-macosx_11_0_arm64.whl (11.2 MB view details)

Uploaded CPython 3.13macOS 11.0+ ARM64

tabeline-0.6.0-cp313-cp313-macosx_10_12_x86_64.whl (12.0 MB view details)

Uploaded CPython 3.13macOS 10.12+ x86-64

tabeline-0.6.0-cp312-cp312-win_amd64.whl (11.4 MB view details)

Uploaded CPython 3.12Windows x86-64

tabeline-0.6.0-cp312-cp312-manylinux_2_39_x86_64.whl (13.1 MB view details)

Uploaded CPython 3.12manylinux: glibc 2.39+ x86-64

tabeline-0.6.0-cp312-cp312-manylinux_2_39_aarch64.whl (12.3 MB view details)

Uploaded CPython 3.12manylinux: glibc 2.39+ ARM64

tabeline-0.6.0-cp312-cp312-macosx_11_0_arm64.whl (11.2 MB view details)

Uploaded CPython 3.12macOS 11.0+ ARM64

tabeline-0.6.0-cp312-cp312-macosx_10_12_x86_64.whl (12.0 MB view details)

Uploaded CPython 3.12macOS 10.12+ x86-64

tabeline-0.6.0-cp311-cp311-win_amd64.whl (11.4 MB view details)

Uploaded CPython 3.11Windows x86-64

tabeline-0.6.0-cp311-cp311-manylinux_2_39_x86_64.whl (13.1 MB view details)

Uploaded CPython 3.11manylinux: glibc 2.39+ x86-64

tabeline-0.6.0-cp311-cp311-manylinux_2_39_aarch64.whl (12.3 MB view details)

Uploaded CPython 3.11manylinux: glibc 2.39+ ARM64

tabeline-0.6.0-cp311-cp311-macosx_11_0_arm64.whl (11.2 MB view details)

Uploaded CPython 3.11macOS 11.0+ ARM64

tabeline-0.6.0-cp311-cp311-macosx_10_12_x86_64.whl (12.0 MB view details)

Uploaded CPython 3.11macOS 10.12+ x86-64

tabeline-0.6.0-cp310-cp310-win_amd64.whl (11.4 MB view details)

Uploaded CPython 3.10Windows x86-64

tabeline-0.6.0-cp310-cp310-manylinux_2_39_x86_64.whl (13.1 MB view details)

Uploaded CPython 3.10manylinux: glibc 2.39+ x86-64

tabeline-0.6.0-cp310-cp310-manylinux_2_39_aarch64.whl (12.3 MB view details)

Uploaded CPython 3.10manylinux: glibc 2.39+ ARM64

tabeline-0.6.0-cp310-cp310-macosx_11_0_arm64.whl (11.2 MB view details)

Uploaded CPython 3.10macOS 11.0+ ARM64

tabeline-0.6.0-cp310-cp310-macosx_10_12_x86_64.whl (12.0 MB view details)

Uploaded CPython 3.10macOS 10.12+ x86-64

File details

Details for the file tabeline-0.6.0.tar.gz.

File metadata

  • Download URL: tabeline-0.6.0.tar.gz
  • Upload date:
  • Size: 135.0 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.12.9

File hashes

Hashes for tabeline-0.6.0.tar.gz
Algorithm Hash digest
SHA256 637598a8822234214c88ee15d97117515b562bf6234326834f3d07f3b1caadef
MD5 b69e77c3baa3a716cb8c3f937258fcaa
BLAKE2b-256 2ceaa72e82abca5a582500f11e55efd22cfe789f45de8b5852e0e46539e49cc6

See more details on using hashes here.

Provenance

The following attestation bundles were made for tabeline-0.6.0.tar.gz:

Publisher: release.yml on drhagen/tabeline

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file tabeline-0.6.0-cp313-cp313-win_amd64.whl.

File metadata

  • Download URL: tabeline-0.6.0-cp313-cp313-win_amd64.whl
  • Upload date:
  • Size: 11.4 MB
  • Tags: CPython 3.13, Windows x86-64
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.12.9

File hashes

Hashes for tabeline-0.6.0-cp313-cp313-win_amd64.whl
Algorithm Hash digest
SHA256 b3b9b6de25984d89dd14ff814801b70724b7cc68232d8b5eaada144fc51ea468
MD5 71cb4c22512263d25a81162e56daa7f0
BLAKE2b-256 2cbee11a496f382aedcdff08df0b2c14f9a8b66fd4f21104f9f835858a7dea8d

See more details on using hashes here.

Provenance

The following attestation bundles were made for tabeline-0.6.0-cp313-cp313-win_amd64.whl:

Publisher: release.yml on drhagen/tabeline

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file tabeline-0.6.0-cp313-cp313-manylinux_2_39_x86_64.whl.

File metadata

File hashes

Hashes for tabeline-0.6.0-cp313-cp313-manylinux_2_39_x86_64.whl
Algorithm Hash digest
SHA256 5baea20c7edc96b9913894ccc88dedc0d8f3c0d2433f06c20193135f081757a9
MD5 1c385e6873bef7c9d85a23175d9d806c
BLAKE2b-256 98aa909cdbe70b7a93270fac619b98a17226336140e23e9962ab169638f693e3

See more details on using hashes here.

Provenance

The following attestation bundles were made for tabeline-0.6.0-cp313-cp313-manylinux_2_39_x86_64.whl:

Publisher: release.yml on drhagen/tabeline

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file tabeline-0.6.0-cp313-cp313-manylinux_2_39_aarch64.whl.

File metadata

File hashes

Hashes for tabeline-0.6.0-cp313-cp313-manylinux_2_39_aarch64.whl
Algorithm Hash digest
SHA256 9c4252011bcec7b5ef48570cb1087f2239479b1b513dd786a44dfea76cf1b50b
MD5 169005ccf607487a2937e927e0feceec
BLAKE2b-256 9a7afce55351dbd58de3daf8359f97dcbc70d0b63619eae3f75c71be2da22c83

See more details on using hashes here.

Provenance

The following attestation bundles were made for tabeline-0.6.0-cp313-cp313-manylinux_2_39_aarch64.whl:

Publisher: release.yml on drhagen/tabeline

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file tabeline-0.6.0-cp313-cp313-macosx_11_0_arm64.whl.

File metadata

File hashes

Hashes for tabeline-0.6.0-cp313-cp313-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 f46ef6a4fb74059d629465c29cc972110bfb3ec970b93b18bd390ed7dcc7cff7
MD5 7808524093fd83a4e1a3fcfe8becaeef
BLAKE2b-256 07603a027698812c99280a78a53223c9c77f4bb9c826f28c252446192c676ae5

See more details on using hashes here.

Provenance

The following attestation bundles were made for tabeline-0.6.0-cp313-cp313-macosx_11_0_arm64.whl:

Publisher: release.yml on drhagen/tabeline

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file tabeline-0.6.0-cp313-cp313-macosx_10_12_x86_64.whl.

File metadata

File hashes

Hashes for tabeline-0.6.0-cp313-cp313-macosx_10_12_x86_64.whl
Algorithm Hash digest
SHA256 d1e70070e31e8b8a35484e88a3dc53444b45d51b76c3707c23403f28588d459c
MD5 474d78e0e5a7c56bbf01cd109a596f1d
BLAKE2b-256 7447fa6d20f538450ed7d2d61aadd145aebbf347f8f7a540972d0d627dee85e8

See more details on using hashes here.

Provenance

The following attestation bundles were made for tabeline-0.6.0-cp313-cp313-macosx_10_12_x86_64.whl:

Publisher: release.yml on drhagen/tabeline

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file tabeline-0.6.0-cp312-cp312-win_amd64.whl.

File metadata

  • Download URL: tabeline-0.6.0-cp312-cp312-win_amd64.whl
  • Upload date:
  • Size: 11.4 MB
  • Tags: CPython 3.12, Windows x86-64
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.12.9

File hashes

Hashes for tabeline-0.6.0-cp312-cp312-win_amd64.whl
Algorithm Hash digest
SHA256 d382044748257a086265437d20de2244c2a7abf87373cbc8d64e2645ba28caa5
MD5 471d4f20d806a662f1934eba6f508ef1
BLAKE2b-256 d609d9ac1b83405ee2ef3ca4a04f602cd1e5f1172bb92acd8a2b245e513588ff

See more details on using hashes here.

Provenance

The following attestation bundles were made for tabeline-0.6.0-cp312-cp312-win_amd64.whl:

Publisher: release.yml on drhagen/tabeline

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file tabeline-0.6.0-cp312-cp312-manylinux_2_39_x86_64.whl.

File metadata

File hashes

Hashes for tabeline-0.6.0-cp312-cp312-manylinux_2_39_x86_64.whl
Algorithm Hash digest
SHA256 cd9c8500e1ef8730fdc116de988f3366db9cde1996cab5731e3f7e8e7fbb0d6e
MD5 83223de5f5c05930b8458ecbf956c745
BLAKE2b-256 af587051bb01b7c2cb7d8c4c9f89910107f187d2cb2f4d7195ec20598b683bc3

See more details on using hashes here.

Provenance

The following attestation bundles were made for tabeline-0.6.0-cp312-cp312-manylinux_2_39_x86_64.whl:

Publisher: release.yml on drhagen/tabeline

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file tabeline-0.6.0-cp312-cp312-manylinux_2_39_aarch64.whl.

File metadata

File hashes

Hashes for tabeline-0.6.0-cp312-cp312-manylinux_2_39_aarch64.whl
Algorithm Hash digest
SHA256 fa525aae4919208780393f9fb4e6f36a3becb895a8fc0e4b68f41169cb5f11b1
MD5 969ce33c37e8765a32fad8707f98fe65
BLAKE2b-256 f055b83cbbed4f12e3b3d2f473e271e69e805549c2d60c80627ad01d8686643a

See more details on using hashes here.

Provenance

The following attestation bundles were made for tabeline-0.6.0-cp312-cp312-manylinux_2_39_aarch64.whl:

Publisher: release.yml on drhagen/tabeline

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file tabeline-0.6.0-cp312-cp312-macosx_11_0_arm64.whl.

File metadata

File hashes

Hashes for tabeline-0.6.0-cp312-cp312-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 9ab8e69ab238cac48120a61584ff276840eef430ab74059707e75e35607e7140
MD5 f71310348a2cc206865a77209c7ac071
BLAKE2b-256 89406f64e6c90ae1e0144fcd7b104befb760549a99a684a2f8bbea7b0414cd0b

See more details on using hashes here.

Provenance

The following attestation bundles were made for tabeline-0.6.0-cp312-cp312-macosx_11_0_arm64.whl:

Publisher: release.yml on drhagen/tabeline

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file tabeline-0.6.0-cp312-cp312-macosx_10_12_x86_64.whl.

File metadata

File hashes

Hashes for tabeline-0.6.0-cp312-cp312-macosx_10_12_x86_64.whl
Algorithm Hash digest
SHA256 f0aae6234f34005e05af072d7500a6fde31f6387d90aca3206d5bd151656c7b4
MD5 c5425367e92da36d46dfad3435b68c5f
BLAKE2b-256 1b3a035f8b83035091d26c31e76f3342f53d16813517e795bc2b4b35414dc953

See more details on using hashes here.

Provenance

The following attestation bundles were made for tabeline-0.6.0-cp312-cp312-macosx_10_12_x86_64.whl:

Publisher: release.yml on drhagen/tabeline

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file tabeline-0.6.0-cp311-cp311-win_amd64.whl.

File metadata

  • Download URL: tabeline-0.6.0-cp311-cp311-win_amd64.whl
  • Upload date:
  • Size: 11.4 MB
  • Tags: CPython 3.11, Windows x86-64
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.12.9

File hashes

Hashes for tabeline-0.6.0-cp311-cp311-win_amd64.whl
Algorithm Hash digest
SHA256 7911d509ef67b6e530c6bdd2553ccc67e9c2fdd55afa7b098ad3c85fe5160fc7
MD5 8b865ac03f0047ad2f351830e3df5a66
BLAKE2b-256 c41c6ad3a15356871ae3621195f1f21db1ebdf3d5c533df1045d19f03b191679

See more details on using hashes here.

Provenance

The following attestation bundles were made for tabeline-0.6.0-cp311-cp311-win_amd64.whl:

Publisher: release.yml on drhagen/tabeline

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file tabeline-0.6.0-cp311-cp311-manylinux_2_39_x86_64.whl.

File metadata

File hashes

Hashes for tabeline-0.6.0-cp311-cp311-manylinux_2_39_x86_64.whl
Algorithm Hash digest
SHA256 f3c602c73eccd6e43b5480400811ccafa89563ae917d6a5b60c2262fd4218051
MD5 24551a9c583e26c4b2dbc55701ad1e2a
BLAKE2b-256 7f055915d5f2cabac5bea65f615cacb37192930282b7f3d6419d1540baf65dfe

See more details on using hashes here.

Provenance

The following attestation bundles were made for tabeline-0.6.0-cp311-cp311-manylinux_2_39_x86_64.whl:

Publisher: release.yml on drhagen/tabeline

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file tabeline-0.6.0-cp311-cp311-manylinux_2_39_aarch64.whl.

File metadata

File hashes

Hashes for tabeline-0.6.0-cp311-cp311-manylinux_2_39_aarch64.whl
Algorithm Hash digest
SHA256 9125775f3540d508d6fb73636e69be18c5b6bed57b873c0246576fea210a26b3
MD5 b7bea34b40060bd4d9222c58bdc72f65
BLAKE2b-256 20fd90e89612120056b4373ad3356ab2440900d1b8cffa5f9f30eab826a0b870

See more details on using hashes here.

Provenance

The following attestation bundles were made for tabeline-0.6.0-cp311-cp311-manylinux_2_39_aarch64.whl:

Publisher: release.yml on drhagen/tabeline

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file tabeline-0.6.0-cp311-cp311-macosx_11_0_arm64.whl.

File metadata

File hashes

Hashes for tabeline-0.6.0-cp311-cp311-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 57571c7df455e3aecb4a19a0afe0e1c716e3bbeda82f2b619e10bde8b7d6f33b
MD5 3383a868ec2e99aae212c8cf81aec691
BLAKE2b-256 b0c7095a4ac30ec8c58ffb6485189242703618961af57f8ef059ca2dcb1c4be9

See more details on using hashes here.

Provenance

The following attestation bundles were made for tabeline-0.6.0-cp311-cp311-macosx_11_0_arm64.whl:

Publisher: release.yml on drhagen/tabeline

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file tabeline-0.6.0-cp311-cp311-macosx_10_12_x86_64.whl.

File metadata

File hashes

Hashes for tabeline-0.6.0-cp311-cp311-macosx_10_12_x86_64.whl
Algorithm Hash digest
SHA256 8d1623dbb936c39815f31f828133089823df782e48a50ea5168fab3d4e2ccc35
MD5 0284a95e4420235a372c4b0b71de224b
BLAKE2b-256 1a7a3a59cd666ce83628bb5525fecd600ad6cace4eb3dbe543a91e821cff3ca8

See more details on using hashes here.

Provenance

The following attestation bundles were made for tabeline-0.6.0-cp311-cp311-macosx_10_12_x86_64.whl:

Publisher: release.yml on drhagen/tabeline

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file tabeline-0.6.0-cp310-cp310-win_amd64.whl.

File metadata

  • Download URL: tabeline-0.6.0-cp310-cp310-win_amd64.whl
  • Upload date:
  • Size: 11.4 MB
  • Tags: CPython 3.10, Windows x86-64
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.12.9

File hashes

Hashes for tabeline-0.6.0-cp310-cp310-win_amd64.whl
Algorithm Hash digest
SHA256 388e52a9b087bde60e170c59c9116d8cbaba880fe2d59618006186e877349199
MD5 255cb3ff14f310de17695e666ff528f6
BLAKE2b-256 ef2996f3a5fde195a6b08b4ae1ce9f843ec23579af20bf99b5c2d2c00a27e0a8

See more details on using hashes here.

Provenance

The following attestation bundles were made for tabeline-0.6.0-cp310-cp310-win_amd64.whl:

Publisher: release.yml on drhagen/tabeline

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file tabeline-0.6.0-cp310-cp310-manylinux_2_39_x86_64.whl.

File metadata

File hashes

Hashes for tabeline-0.6.0-cp310-cp310-manylinux_2_39_x86_64.whl
Algorithm Hash digest
SHA256 3a3802bbaeb6dcd201eb015c0487120b08652b39ceea9b5933a60ce969dcd5a3
MD5 aa80071ac667565912de862fdcdea9af
BLAKE2b-256 b688e1ea7bd1c36813b787a14370a8e6def3bb27e698d17fd4fc7af0b19228e3

See more details on using hashes here.

Provenance

The following attestation bundles were made for tabeline-0.6.0-cp310-cp310-manylinux_2_39_x86_64.whl:

Publisher: release.yml on drhagen/tabeline

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file tabeline-0.6.0-cp310-cp310-manylinux_2_39_aarch64.whl.

File metadata

File hashes

Hashes for tabeline-0.6.0-cp310-cp310-manylinux_2_39_aarch64.whl
Algorithm Hash digest
SHA256 dd2c3a3f0f5d904cbee2665273654e39ff4ea9dea99fbe5706ce3d57dc0d85b2
MD5 446a3bef0eee017d9fbaa86e38574321
BLAKE2b-256 60c57e91c2b9cac182866a97c745c60a5eda6bb5d529a4ab00244af256f694dd

See more details on using hashes here.

Provenance

The following attestation bundles were made for tabeline-0.6.0-cp310-cp310-manylinux_2_39_aarch64.whl:

Publisher: release.yml on drhagen/tabeline

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file tabeline-0.6.0-cp310-cp310-macosx_11_0_arm64.whl.

File metadata

File hashes

Hashes for tabeline-0.6.0-cp310-cp310-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 ac552a7737bf49d00f4be899b2e716cc9546c997556e236e7957e0d741a4affd
MD5 0b605a4db18cad5bd12cbfaa0a53a9e2
BLAKE2b-256 b77c57c9ea2ed1f47525d4edfcff3365a755ac18290db8a9799343ca4a8e45ff

See more details on using hashes here.

Provenance

The following attestation bundles were made for tabeline-0.6.0-cp310-cp310-macosx_11_0_arm64.whl:

Publisher: release.yml on drhagen/tabeline

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file tabeline-0.6.0-cp310-cp310-macosx_10_12_x86_64.whl.

File metadata

File hashes

Hashes for tabeline-0.6.0-cp310-cp310-macosx_10_12_x86_64.whl
Algorithm Hash digest
SHA256 484560400df7ca316a345e3266ed865b1310021b79e24ebd0b2362673e77b820
MD5 55a73ed0abaefd7d0c73d30ed0ff83fd
BLAKE2b-256 0d3231b38d1e516eec1d0ca660a2dec30ee22179029c6e2bf8953a169f83b935

See more details on using hashes here.

Provenance

The following attestation bundles were made for tabeline-0.6.0-cp310-cp310-macosx_10_12_x86_64.whl:

Publisher: release.yml on drhagen/tabeline

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

Supported by

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