dtypeflow
dtypeflow is a terminal UI to convert a CSV file to Parquet.
Point it at a CSV file, and for each column it infers the tightest-fitting
dtype (Boolean, unsigned/signed integers UInt8…UInt64/Int8…Int64,
floats Float16/Float32/Float64, String, or Dictionary), shows the
observed statistics, and lets you review or override the choice before
writing the result to Parquet — all locally, no data leaves your machine.
Installation
uv tool install dtypeflow
Or with pipx:
pipx install dtypeflow
Or with pip:
pip install dtypeflow
Usage
dtypeflow
The workflow has three steps:
- Pick a file — enter or browse for a CSV path and choose the delimiter (Comma by default; Auto detects it from the first 64 KiB).
- Configure types — for each column, review the recommended dtype, its stats (unique values, samples, range/precision/scale), and pick from compatible alternatives grouped by safety (Safe / Too small / Discouraged).
- Export — write the configured dataset to a Parquet file.
Screenshots
Alternatives for a column are grouped by how safe they are to apply:
| Safe | Too small | Discouraged |
Development
This project uses uv for dependency management.
uv sync
uv run dtypeflow
Lint:
uv run --with ruff ruff check src/
License
Metadata
Release files for dtypeflow 1.2.0
For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.
Source distribution (sdist)
| File | Size | Uploaded | Provenance | |
|---|---|---|---|---|
| dtypeflow-1.2.0.tar.gz | 24.3 kB | Without provenance | Details |
Built distribution (wheel)
| File | Interpreter | ABI | Platform | Reset |
|---|---|---|---|---|
| dtypeflow-1.2.0-py3-none-any.whl | Python 3 | none | any | Details |
Total release size: 60.1 kB
Release files / dtypeflow-1.2.0.tar.gz
| Download URL | dtypeflow-1.2.0.tar.gz |
|---|---|
| Size | 24.3 kB |
| Tags | Source |
|
SHA-256 checksum How to use checksums |
79ded5d0269427636c0acfbf09cb770ca5aa6918db73ded1d734e70bdbc850d1
|
|
BLAKE2b-256 checksum How to use checksums |
37fd47028f55c46d2d9c3a75f902d1763b43ef57766681e19bc775def7b97c5a
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
uv/0.13.5 {"installer":{"name":"uv","version":"0.13.5","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":null,"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":null}
|
Release files / dtypeflow-1.2.0-py3-none-any.whl
| Download URL | dtypeflow-1.2.0-py3-none-any.whl |
|---|---|
| Size | 35.8 kB |
| Tags | Python 3 |
|
SHA-256 checksum How to use checksums |
2a8dc83ebaca0c16c64af0d16e7fc8bada395c8a260f995d9b98a1e80367918e
|
|
BLAKE2b-256 checksum How to use checksums |
bd9d2ea30bb3c74316270aa71c81806c6600898fb43809f516540d028a30d4dc
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
uv/0.13.5 {"installer":{"name":"uv","version":"0.13.5","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":null,"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":null}
|
Security for dtypeflow 1.2.0
Provenance
Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.
No provenance found
None of the files in this release were uploaded with provenance metadata.
A note on package security
PyPI is a repository for distributing packages, not a service for auditing them. While third-party security researchers and our staff do their best to detect and remove malicious packages, PyPI cannot guarantee the quality, security or suitability of any given package.
To learn more about protecting yourself from malicious actors, visit our package security documentation.