create data processing pipelines
Project description
PLMBR
create data processing pipelines
Installation
Installing plmbr, which is available as a Python package, can be done with pip, preferably in a virtual environment. Launch a terminal and use the following command to install plmbr.
pip install plmbr
Introduction
It is a Python library for building predictable and reproducible data pipelines with ease. It wraps pandas with a clean, modular API inspired by TensorFlow’s Keras. plmbr simplifies complex data workflows into composable steps. This works with Jupyter notebooks as well.
Creating Pipes
Pipe objects are simple python classes that implements flow method which takes a pandas DataFrame as input and returns a pandas DataFrame as output. Pipe objects are mean to perform a specific operation on the data. Following is an example of a Pipe object that doubles the values in a column.
from pandas import DataFrame
from plmbr import Pipe, Pipeline
class DoubleIt(Pipe):
def __init__(self, col: str):
self.col = col
def flow(self, data: DataFrame) -> DataFrame:
data[self.col] = data[self.col] * 2
return data
Building Pipeline
Pipeline is similar to Sequential in Keras. It takes a list of Pipe objects as input and builds a pipeline of operations. Each Pipe object is called in sequence to process the data.
pipeline = Pipeline([
DoubleIt(col="A"),
])
Processing Data
df = DataFrame({ "A": [1, 2, 3] }, columns=["A"])
doubled_df = pipeline(df) # or pipeline.flow(df)
doubled_df
| A | |
|---|---|
| 0 | 2 |
| 1 | 4 |
| 2 | 6 |
Contribute
Data transformation is a complex task, and plmbr is designed to be extensible and flexible to accommodate a wide range of use cases. If you have ideas for new features, find bugs or usability issues, or want to submit a pull request, your input is appreciated. Contributions of all kinds code, documentation, or feedback help improve the library and shape its future.
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
Filter files by name, interpreter, ABI, and platform.
If you're not sure about the file name format, learn more about wheel file names.
Copy a direct link to the current filters
File details
Details for the file plmbr-0.5.0.tar.gz.
File metadata
- Download URL: plmbr-0.5.0.tar.gz
- Upload date:
- Size: 2.0 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: uv/0.9.9 {"installer":{"name":"uv","version":"0.9.9"},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"Fedora Linux","version":"43","id":"","libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":null}
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
0915c94d3ef688c1c558a2238b8f17d73f50491d3e719ea16f2bbb44e1e7f66e
|
|
| MD5 |
9a42e1cbd2b10000d24c33c9bb5b0743
|
|
| BLAKE2b-256 |
f43dd8d317868d703af09ab06e0b602561e5473242c1e07bc4666855b3d16c05
|
File details
Details for the file plmbr-0.5.0-py3-none-any.whl.
File metadata
- Download URL: plmbr-0.5.0-py3-none-any.whl
- Upload date:
- Size: 2.8 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: uv/0.9.9 {"installer":{"name":"uv","version":"0.9.9"},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"Fedora Linux","version":"43","id":"","libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":null}
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
3fb394bc3471d44444f133062f09c0ed977e335025a1a3cf1fc8bf1c9d2386ef
|
|
| MD5 |
e10f19ceed011719e4d348b04b90d8ad
|
|
| BLAKE2b-256 |
df2d2d46e461482a7f9bc0c427784b1881af285d2a70abe516eddb99bb4b1b1c
|