Reusable Pipeline Recipes
EazyDataFix 2.0 lets you save explicit preparation rules, inspect a preview and replay the reviewed workflow on future files.
Install v2.0.0
pip install --upgrade eazydatafix==2.0.0For YAML recipes, install the optional extra with pip install "eazydatafix[yaml]==2.0.0".
1. Define explicit rules
A PipelineRecipe records the workflow and its column rules as data—not executable configuration. Rule names refer to normalized headings, so Customer ID becomes customer_id.
1import eazydatafix as edf23recipe = edf.PipelineRecipe(4 name="monthly_sales",5 columns={6 "customer_id": edf.ColumnRule(dtype="string"),7 "amount": edf.ColumnRule(8 dtype="number",9 currency_symbols=("₹",),10 on_error="quarantine",11 ),12 "order_date": edf.ColumnRule(13 dtype="datetime",14 date_format="%d/%m/%Y",15 ),16 "city": edf.ColumnRule(17 dtype="string",18 category_mapping={"HYD": "Hyderabad", "BLR": "Bengaluru"},19 ),20 },21)2223recipe.save("monthly_sales.json")2. Preview, review and apply
preview() produces an in-memory review plan bound to the source, recipe, selected stages and proposed output. apply() re-runs the pipeline and rejects a changed source or mismatched result.
1pipeline = edf.Pipeline(2 edf.PipelineRecipe.load("monthly_sales.json")3)45plan = pipeline.preview("sales.csv")6print(plan.selected_steps)7print(plan.result.report())89result = pipeline.apply("sales.csv", plan)1011if result.is_ready:12 result.save("sales_output", formats=("csv", "excel"))Supported explicit types
| Rule | Output | Typical control |
|---|---|---|
| string | pandas string | Preserve identifiers and leading zeroes |
| integer | nullable Int64 | Reject fractional values and overflow |
| number | nullable Float64 | Declare separators, currency and percentages |
| boolean | nullable boolean | Convert true/false, yes/no, y/n and 1/0 |
| datetime | pandas datetime | Require an explicit format or ISO8601 |
| category | pandas category | Apply literal values and mappings |
Choose what invalid conversions do
reject— preserve the column and fail the readiness/export gate.preserve— keep the column, report a warning and continue readiness checks.quarantine— exclude invalid rows from output and retain their original values as separate evidence.
Evidence and safe exports
Results expose status, readiness, issues, changes, before/after scores, validations, tables and quarantined rows. Only ready, applied and unchanged results can export clean data. Detailed audits can capture every changed cell, so treat them as potentially sensitive source data.
Use recipes with every readiness workflow
Set workflow="ml_ready" for recipe-bound training and inference artifacts, or workflow="powerbi_ready" for named tables, key checks, relationship validation and optional date dimensions. Analysis Ready is the default.
Command line
edf sales.csv --recipe monthly_sales.json --preview --output preview.json
edf sales.csv --recipe monthly_sales.json --export-dir output
edf --recipe bi_recipe.json --table sales=sales.csv \
--table customers=customers.csv --export-dir output --format csv --format excelCurrent scope
Pipelines currently run in memory with pandas. Recipes and ML artifacts are portable; review plans remain process-local. Streaming, SQL connectors and browser Studio recipe execution remain future work.
See the v2.0.0 release notes or browse the complete upstream recipe guide.