Skip to main content

pytae

PyPI Python CI License

Pandas helpers for everyday data-science tasks (filtering, selection, reshaping, aggregation, plotting), plus a pytae CLI that exposes the same operations for inspecting and converting tabular files (.parquet, .csv, .txt, .dat, .sas7bdat) without writing any Python.

Install

pip install pytae

CLI

pytae data.parquet -head
pytae data.parquet -qry "species='Adelie'" -select "species,body_mass_g" -convert -o subset.csv
pytae data.parquet -sql "select species, avg(body_mass_g) from data group by species"
pytae -file "data1.parquet=df1; data2.parquet=df2" -merge "left=df1,right=df2,on=id"

See docs/CLI.md for the full CLI reference and flag guide, and docs/CLI_MULTI_FILE.md for -file/-merge/-concat.

Plotting

Plotter: method-chainable plots on top of pandas.plot() (pip install pytae[plot]).

from pytae.plotting import Plotter

Plotter().data(penguins).plot(
    x="bill_length_mm", y="bill_depth_mm", kind="scatter", c="species", cmap="viridis"
).finalize()

See docs/PLOTTING.md for more examples with sample data.

Library

Import pytae as pt. Same verbs work as pt.select(df, ...) or as df.pt.select(...) (mix with pandas: df.rename(...).pt.agg_df(...)). Notebooks use the accessor chain. CLI flags (-select, -qry, …) are unchanged.

import pytae as pt
penguins = pt.sample("penguins")
pt.select(penguins, "species", contains="bill")
(penguins
 .pt.select("species", "island", "bill_length_mm", "body_mass_g")
 .pt.agg_df(a=["mean", "n"])
)
  • Filtering — pt.qry() / df.pt.qry(): string expressions, dicts, or keyword filters (equality, lists, in/not in, comparisons, intervals)
  • Selection — pt.select(): columns by name, regex, dtype, or name pattern
  • Mutating — pt.mutate(): create/overwrite columns via formulas, if_else(), case_when(), map()
  • Reshaping — pt.long() / pt.wide(): melt numeric columns to rows, pivot back to columns
  • Aggregation — pt.agg_df(): auto-detects group columns and aggregates the rest
  • Utilities — pt.to_clip(), pt.handle_missing(), pt.cols(), pt.group_x(), pt.clean_columns(), pt.replace_values()
  • SQL — pt.sql() / df.pt.sql() via duckdb (pip install pytae[sql]); the frame is table data

See docs/LIBRARY.md for examples of each.

License

MIT — see LICENSE.

Release files for pytae 3.5.1

For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.

Source distribution (sdist)

Source distribution for pytae 3.5.1
File Size Uploaded
pytae-3.5.1.tar.gz 2.5 MB Details

Built distribution (wheel)

Table of built distributions (wheels) for pytae 3.5.1
File Interpreter ABI Platform
pytae-3.5.1-py3-none-any.whl Python 3 none any Details

Total release size: 4.2 MB

Release files / pytae-3.5.1.tar.gz

Download URL pytae-3.5.1.tar.gz
Size 2.5 MB
Tags Source
SHA-256 checksum
How to use checksums
9cb4a226aa17e084fe68960e6f1d216b9881f3c6e9e4fbc5ad4b81d03a15f8ba
BLAKE2b-256 checksum
How to use checksums
b318b78001536688669970b6f12729326401aa6ac2ba090707fabbd5135b9d84
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/7.0.0 CPython/3.13.14

Release files / pytae-3.5.1-py3-none-any.whl

Download URL pytae-3.5.1-py3-none-any.whl
Size 1.7 MB
Tags Python 3
SHA-256 checksum
How to use checksums
de4a140ead33c5417001882c4e43120ad2a955e787931e1638269cbfd028be50
BLAKE2b-256 checksum
How to use checksums
43a6ebc52ea8335f90328b56fb038dd473f4c99fd915be794f3aeb64acd5b00a
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/7.0.0 CPython/3.13.14

Release history Release notifications | RSS feed

3.5.2

2 release files

This release

3.5.1 This release

2 release files

3.5.0

2 release files

3.4.3

2 release files

3.4.2

2 release files

3.4.1

2 release files

3.4.0

2 release files

3.3.1

2 release files

3.3.0

2 release files

3.2.0

2 release files

3.1.2

2 release files

3.1.1

2 release files

3.1.0

2 release files

3.0.2

2 release files

3.0.1

2 release files

3.0.0

2 release files

2.6.6

2 release files

2.6.5

2 release files

2.6.4

2 release files

2.6.3

2 release files

2.6.2

2 release files

2.6.1

2 release files

2.6.0

2 release files

2.5.9

2 release files

2.5.8

2 release files

2.5.7

2 release files

2.5.6

2 release files

2.5.5

2 release files

2.5.4

2 release files

2.5.3

2 release files

2.5.2

2 release files

2.5.1

2 release files

2.5.0

2 release files

2.4.8

2 release files

2.4.7

2 release files

2.4.6

2 release files

2.4.5

2 release files

2.4.4

2 release files

2.4.3

2 release files

2.4.2

2 release files

2.4.1

2 release files

2.4.0

2 release files

2.3.6

2 release files

2.3.5

2 release files

2.3.4

2 release files

2.3.3

2 release files

2.3.2

2 release files

2.3.1

2 release files

2.3.0

2 release files

2.2.9

2 release files

2.2.8

2 release files

2.2.7

2 release files

2.2.6

2 release files

2.2.5

2 release files

2.2.4

2 release files

2.2.3

2 release files

2.2.2

2 release files

2.2.0

2 release files

2.1.5

2 release files

2.1.4

2 release files

2.1.3

2 release files

2.1.2

2 release files

2.1.1

2 release files

2.1.0

2 release files

2.0.8

2 release files

2.0.7

2 release files

2.0.6

2 release files

2.0.5

2 release files

2.0.4

2 release files

2.0.3

2 release files

2.0.2

2 release files

2.0.1

2 release files

2.0.0

2 release files

1.0.5

2 release files

1.0.4

2 release files

1.0.2

2 release files

1.0.0

2 release files

0.0.9

2 release files

0.0.8

2 release files

0.0.7

2 release files

0.0.6

2 release files

0.0.5

2 release files

0.0.4

2 release files

0.0.3

2 release files

0.0.2

2 release files

0.0.1

2 release files

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page