[DataPrepX] — Intelligent Terminal-based Data Preprocessing
DataPrepX is an open-source, interactive data-preprocessing toolkit designed to streamline the transition from raw data to model-ready features. Built for power users and automation pipelines, it provides a guided CLI experience that ensures reproducibility through JSON configuration tracking.
The latest release introduces LLM-augmented data engineering and automated predictive insights:
- 🤖 Conversational AI Assistant — Integrated with local Ollama servers to allow natural-language querying of your dataset.
- 🌲 Random Forest Integration — Built-in support for baseline predictive scoring and feature importance rankings.
- 🛠️ AI Tool-Calling — The assistant can perform cell-level edits and query data via a secure, restricted
eval()sandbox. - ⚡ Streaming & Context — Support for token-by-token streaming and an extended 30,000-token context window via a custom
Modelfile.
-
Interactive Terminal CLI — A fully guided experience using
RichandQuestionarywith autocomplete and live dataset previews. -
6-Step Preprocessing Pipeline:
- Target Isolation — Protects the label column from transformations.
- Missing Value Handling — Seven strategies including mean, median, and backfill.
- Categorical Encoding — Label, One-Hot, and Ordinal encoding.
- Outlier Removal — Univariate IQR filters and multivariate Elliptic Envelope detection.
- Feature Selection —
VarianceThresholdto drop near-constant columns. - Feature Scaling — Standard, MinMax, and Robust scaling.
-
Reproducibility — Every session generates a
job_config.jsonrecording every decision made. -
Multi-Format Export — Generates CSV, JSON, and XLSX outputs in a single pass.
The provided installer creates a virtual environment and handles all dependencies.
bash installer.shEnsure you have Ollama installed, then build the custom model.
ollama create dataprepx-assistant -f Modelfilesource .venv/bin/activate
python cli.py| Layer | Libraries |
|---|---|
| Data | pandas, numpy, scikit-learn |
| Interface | rich, questionary |
| AI / LLM | Ollama (llama3.2), requests |
| Analysis | ydata-profiling |
Shreyas A — github.com/shreyas23dev
Trinath Bhattacharya — github.com/CodingLangur
