Archived
This project has been archived by its maintainers, and is no longer receiving any updates.
planframe-pandas
pandas adapter package for PlanFrame. Import as planframe_pandas.
Documentation (ReadTheDocs):
- pandas track (end users):
https://planframe.readthedocs.io/en/latest/planframe_pandas/ - Light API reference:
https://planframe.readthedocs.io/en/latest/planframe_pandas/reference/api/
Install
pip install planframe-pandas
Usage
from planframe_pandas import PandasFrame
class User(PandasFrame):
id: int
age: int
pf = User([{"id": 1, "age": 10}, {"id": 2, "age": 20}])
rows = pf.select("id").to_dicts()
Notes
- Core v1.2.0+ (
planframe, current minor v1.3.x): shared helpers includeexecute_plan_async,planframe.materialize, Expr operator IR, Frame*_asyncaliases, and v1.3.0 adapter/typing notes—see Migrating since v1.1.0. PandasFramesubclasses coreplanframe.pandas.PandasLikeFrame, so you get pandas-flavored helpers (assign,sort_values, boolean indexing, columnfilter,astype,eval,drop_duplicates, …) on top of the sharedFrameplan. See the pandas-like API guide.- PlanFrame is always lazy: chaining does not touch backend data; execution happens at
collect()boundaries. collect()returnslist[pydantic.BaseModel]. Usecollect_backend()for apandas.DataFrame, orstream_dicts()/stream()to iterate rows (see Streaming rows).
Common transforms
with_row_index(name="row_nr", offset=0): add a monotonically increasing row number column.clip(lower=..., upper=..., subset=...): clamp numeric columns (ifsubset=None, clamps all numeric schema fields).cast_many/cast_subset: multi-column cast helpers.fill_null_many/fill_null_subset: multi-column fill-null helpers.rename_upper/lower/title/strip(...): schema-driven rename helpers.pivot_longer(...)/pivot_wider(...): reshape convenience wrappers aroundmelt/pivot.
Metadata
Release files for planframe-pandas 1.3.0
For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.
Source distribution (sdist)
| File | Size | Uploaded | |
|---|---|---|---|
| planframe_pandas-1.3.0.tar.gz | 13.6 kB | Details |
Built distribution (wheel)
| File | Interpreter | ABI | Platform | Reset |
|---|---|---|---|---|
| planframe_pandas-1.3.0-py3-none-any.whl | Python 3 | none | any | Details |
Total release size: 29.6 kB
Release files / planframe_pandas-1.3.0.tar.gz
| Download URL | planframe_pandas-1.3.0.tar.gz |
|---|---|
| Size | 13.6 kB |
| Tags | Source |
|
SHA-256 checksum How to use checksums |
52699750afc78e808232213e3f3bc1e84d5f6cd190cc19dfd0361bb6c62f30f9
|
|
BLAKE2b-256 checksum How to use checksums |
20aeaadf92fab951a00e52d75aadf334af111737c99930115b9e7d832b57fe4a
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/6.1.0 CPython/3.13.12
|
Release files / planframe_pandas-1.3.0-py3-none-any.whl
| Download URL | planframe_pandas-1.3.0-py3-none-any.whl |
|---|---|
| Size | 16.0 kB |
| Tags | Python 3 |
|
SHA-256 checksum How to use checksums |
ccf9aa9157b0bd5a4fc60d09e83fe8cfe5ac9d4c40f55614b6a5229d79d45103
|
|
BLAKE2b-256 checksum How to use checksums |
5f9e89a5a354fb5f662c71eb87a15f96fd8e13374778239c769c77250235fd8b
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/6.1.0 CPython/3.13.12
|