A python package used for validating pandas dataframes.
Project description
pandas_validate
A python package used for validating pandas dataframes.
⚙️ Installation
python -m pip install pandas_validate
🚀 Usage
# Imports
import pandas as pd
from pandas_validate import Schema
from pandas_validate.columns import IntColumn, TextColumn
# Define your Schema
class MySchema(Schema):
IntField = IntColumn(min_value=3, max_value=10)
TextField = TextColumn(min_length=3, max_length=5, pattern="^[a-c]+$")
# Get your DataFrame
df = pd.DataFrame({
'IntField': [1, 6, 11, 7],
'TextField': ['ab', 'abcd', 'ccbbaa', 'ccb'],
'UnknownField': [1, 2, 3, 4]
})
# Validate your DataFrame
validated_df, exceptions = MySchema.validate(df)
Results
>>> print(validated_df)
IntField TextField
0 NaN None
1 6.0 None
2 NaN None
3 7.0 ccb
>>> print(exceptions)
column row value error error_details
0 IntField 0.0 1 Column validation failed The value 1 < 3
1 IntField 2.0 11 Column validation failed The value 11 < 10
2 TextField 0.0 ab Column validation failed The value ab is too short
3 TextField 1.0 abcd Column validation failed The value abcd does not match the regular expr...
4 TextField 2.0 ccbbaa Column validation failed The value ccbbaa is too long
5 UnknownField NaN None Unknown Column The column "UnknownField" is not in the Schema
Code Contributors
This project exists thanks to all the people who contribute. [Contribute].
🤝 Contributing
Contributions, issues and feature requests are welcome.
Feel free to check issues page if you want to contribute.
Check the contributing guide.
Author
👤 Larry Green
- Github: @larrygreen3
Show your support
Please ⭐️ this repository if this project helped you!
📝 License
Copyright © 2023 Larry Green.
This project is MIT licensed.
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 pandas-validate-1.0.2.tar.gz.
File metadata
- Download URL: pandas-validate-1.0.2.tar.gz
- Upload date:
- Size: 10.3 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/4.0.2 CPython/3.11.2
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
7dd62e5dbac978b82ca30d9e7ab9082e2b347278f5e91a1b4bf71a1f5ba21e07
|
|
| MD5 |
9d9e84a9528cd3ee8f7aa8890567acf4
|
|
| BLAKE2b-256 |
e061a34c9c0c5431ade3543e486a9f75eed0b2eab144f2c390fbab5cc3e6b6aa
|
File details
Details for the file pandas_validate-1.0.2-py3-none-any.whl.
File metadata
- Download URL: pandas_validate-1.0.2-py3-none-any.whl
- Upload date:
- Size: 10.4 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/4.0.2 CPython/3.11.2
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
60b0f66634281fe76713544bb5bee1f3a723ca1a7dab6959aa235b16f2e2168b
|
|
| MD5 |
a9df223625ed863e4c08481327782394
|
|
| BLAKE2b-256 |
5a8204ddce4f4c07ef4ffe2a728bf5794f63e04fc97aaf4a587f32c66c6d94b6
|