pytae
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 tabledata
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)
| File | Size | Uploaded | |
|---|---|---|---|
| pytae-3.5.1.tar.gz | 2.5 MB | Details |
Built distribution (wheel)
| File | Interpreter | ABI | Platform | Reset |
|---|---|---|---|---|
| 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
|