- Notifications
You must be signed in to change notification settings - Fork2
Python package to validate data against whip specifications
License
inbo/pywhip
Folders and files
Name | Name | Last commit message | Last commit date | |
---|---|---|---|---|
Repository files navigation
The pywhip package is a Python package to validate data againstwhip specifications, a human and machine-readable syntax to express specifications for data.
- Free software: MIT license
- Documentation:https://inbo.github.io/pywhip
Check thedocumentation pages for more information.
To install pywhip, run this command in your terminal:
pip install pywhip
For more detailed installation instructions, see thedocumentation pages.
Launch a jupyter notebook to interactively try out the pywhip package:
To validate a CSV data file with the field headerscountry
,eventDate
andindividualCount
, write whip specifications, according to thewhip syntax:
specifications = """country:allowed:[BE, NL]eventDate:dateformat:'%Y-%m-%d'mindate:2016-01-01maxdate:2018-12-31individualCount:numberformat: x# needs to be an integer valuemin:1max:100"""
To whip your data set, e.g.my_data.csv
, pass the data to whip specifications:
frompywhipimportwhip_csvexample=whip_csv("my_data.csv",specifications,delimiter=',')
and write the output report to an html file:
withopen("report_example.html","w")asindex_page:index_page.write(example.get_report('html'))
Resulting in areport like this. For a more detailed introduction, seethe documentaton tutorial.
This package was created withCookiecutter and theaudreyr/cookiecutter-pypackage project template.
Validation of data rows is using theCerberus package.
About
Python package to validate data against whip specifications