Comma-separated files
Read with Polars schema inference. Use a stable header and consistent types between train and inference.
The default package is local and offline. Model evaluation, the dashboard, AI planning, and contributor tools are opt-in extras so a data-cleaning script does not install a full platform.
Use Python 3.10, 3.11, or 3.12. Create a virtual environment for each project so the pipeline version is explicit.
Terminalrecommendedpython -m venv .venv python -m pip install --upgrade pip python -m pip install datadoc-cli
Or with uv:
uvfast environment setupuv venv uv pip install datadoc-cli
| Extra | Install | Adds |
|---|---|---|
| Core | datadoc-cli | Profile, plan, fit, transform, export, CSV, and Parquet. |
| ML | datadoc-cli[ml] | scikit-learn baselines and evaluation reports. |
| UI | datadoc-cli[ui] | FastAPI, Uvicorn, and multipart support for the local dashboard. |
| AI | datadoc-cli[ai] | Optional advisory planning through LiteLLM. It never executes code. |
| Dev | datadoc-cli[dev] | Pytest, Ruff, build tooling, and scikit-learn for contributors. |
Terminalcommon project setuppython -m pip install "datadoc-cli[ml,ui]"
Check that the command is available and run a read-only profile on your own data.
Terminalno data is modifieddatadoc --help datadoc version datadoc profile data.csv
The profile command prints JSON-like output containing the schema, null counts, cardinality, roles, findings, duplicate count, and schema fingerprint. It does not write a cleaned dataset.
Read with Polars schema inference. Use a stable header and consistent types between train and inference.
Preserves types more reliably and is recommended for transformed feature outputs.
Free text, image, joins, geospatial, and distributed workflows are reported as boundaries rather than guessed.
Convert spreadsheets or JSON upstream, or export them as CSV/Parquet with an explicit schema.
Install python -m pip install "datadoc-cli[ml]" in the same environment that owns the datadoc command.
Activate the intended virtual environment, reinstall the package, and check where datadoc on Windows or which datadoc on macOS/Linux.
DiagnosticsWindows + Unixpython -c "import datadoc; print(datadoc.__file__)" where datadoc # Windows which datadoc # macOS / Linux