Skip to main content

meti_profil

A modern, Rust-powered data profiling library with Python bindings. It reads CSV, Parquet, and Excel files (or pandas / polars DataFrames) and generates a hybrid Markdown report that is readable by humans and structured for consumption by code agents.

Installation

pip install meti-profil

The import name is meti_profil (import meti_profil as mp). PyPI normalizes the distribution name, so pip install meti_profil also works.

Quick start

import meti_profil as mp

# From a file
report = mp.ProfileReport("data.csv", title="My dataset")

# Interactive HTML report (self-contained, works offline)
report.to_html("profile.html")

# Markdown report (great for diffs and code agents)
report.to_file("profile.md")

# From a pandas DataFrame
import pandas as pd
df = pd.read_csv("data.csv")
report = mp.ProfileReport(df)

# Programmatic access
print(report.get_summary())          # dataset-level metrics
print(report.get_column_info("age")) # per-column schema info
markdown = report.to_markdown()
html = report.to_html()              # returns the HTML as a string

In a notebook

In Jupyter / VSCode, just display the report — it renders inline as an interactive dashboard (sandboxed, no external resources):

report = mp.ProfileReport(df)
report  # interactive histograms, bar charts, correlation heatmap, ...

ProfileReport parameters

Parameter Type Default Description
source str, Path, pandas/polars DataFrame required Data source.
title str "Dataset Profile" Report title (written to the frontmatter).
minimal bool False Reserved: reduce heavy analyses.
explorative bool True Reserved: enable advanced analyses.

Report format

The Markdown report starts with a YAML frontmatter block (rows, columns, missing cells, duplicates, version) followed by normalized ## sections: Overview, Schema, Numeric Columns, Categorical Columns, Missing Values, Duplicate Rows, and Correlations.

Features

  • Fast Rust engine backed by Apache Arrow.
  • Reads CSV, Parquet (snappy/zstd/lz4/brotli/gzip), and Excel files.
  • Accepts pandas and polars DataFrames.
  • Schema/type detection, descriptive numeric statistics, categorical frequencies, missing-value and duplicate-row analysis, and Pearson correlations.
  • Interactive HTML report: a single self-contained file (embedded CSS/JS, no CDN) with histograms, categorical bar charts, a missing-value overview and a correlation heatmap — all with hover tooltips.
  • Native notebook rendering in Jupyter / VSCode via _repr_html_.
  • Clean Markdown reports optimized for both humans and code agents.

Output formats

Method Output
to_html(path) Write a self-contained interactive HTML file.
to_html() Return the HTML document as a string.
to_file(path) Write the Markdown report.
to_markdown() Return the Markdown report as a string.
get_summary() Dataset-level metrics as a dict.
get_column_info(name) Per-column schema info as a dict.
display in a notebook Inline interactive dashboard (_repr_html_).

Development

Requires a Rust toolchain (1.78+) and Python 3.10+.

python3 -m venv .venv
source .venv/bin/activate
pip install maturin pytest pandas polars pyarrow

# Build the extension in-place
maturin develop

# Run the test suites
cargo test --workspace
pytest tests/python -v

License

MIT

Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

meti_profil-0.1.1.tar.gz (44.5 kB view details)

Uploaded Source

Built Distributions

If you're not sure about the file name format, learn more about wheel file names.

meti_profil-0.1.1-cp310-abi3-win_amd64.whl (4.3 MB view details)

Uploaded CPython 3.10+Windows x86-64

meti_profil-0.1.1-cp310-abi3-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (5.0 MB view details)

Uploaded CPython 3.10+manylinux: glibc 2.17+ x86-64

meti_profil-0.1.1-cp310-abi3-manylinux_2_17_aarch64.manylinux2014_aarch64.whl (4.9 MB view details)

Uploaded CPython 3.10+manylinux: glibc 2.17+ ARM64

meti_profil-0.1.1-cp310-abi3-macosx_11_0_arm64.whl (4.4 MB view details)

Uploaded CPython 3.10+macOS 11.0+ ARM64

meti_profil-0.1.1-cp310-abi3-macosx_10_12_x86_64.whl (4.7 MB view details)

Uploaded CPython 3.10+macOS 10.12+ x86-64

File details

Details for the file meti_profil-0.1.1.tar.gz.

File metadata

  • Download URL: meti_profil-0.1.1.tar.gz
  • Upload date:
  • Size: 44.5 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.13.12

File hashes

Hashes for meti_profil-0.1.1.tar.gz
Algorithm Hash digest
SHA256 745e0bfafe82604c13cd6e278043fe33b02823dd30be33ef3bf5e6941a8be231
MD5 612cd0471cf4a2db8ff3b63f0cb2afa1
BLAKE2b-256 072d9f0b56f44e0483983ea637a1523025e7a7ca63c18bfbc9339138ea703328

See more details on using hashes here.

Provenance

The following attestation bundles were made for meti_profil-0.1.1.tar.gz:

Publisher: ci.yml on Metimer/meti_profil

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file meti_profil-0.1.1-cp310-abi3-win_amd64.whl.

File metadata

  • Download URL: meti_profil-0.1.1-cp310-abi3-win_amd64.whl
  • Upload date:
  • Size: 4.3 MB
  • Tags: CPython 3.10+, Windows x86-64
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.13.12

File hashes

Hashes for meti_profil-0.1.1-cp310-abi3-win_amd64.whl
Algorithm Hash digest
SHA256 c75758c22b84882347816a914c2f55d5382388ef4066a8402a6db520308fb9c5
MD5 a1d79b90287627c4edc63f1b05648345
BLAKE2b-256 3b86c25c36a81f541f90956ecaffa49d7d37e63179aa6ce54e4c2196ae4e45de

See more details on using hashes here.

Provenance

The following attestation bundles were made for meti_profil-0.1.1-cp310-abi3-win_amd64.whl:

Publisher: ci.yml on Metimer/meti_profil

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file meti_profil-0.1.1-cp310-abi3-manylinux_2_17_x86_64.manylinux2014_x86_64.whl.

File metadata

File hashes

Hashes for meti_profil-0.1.1-cp310-abi3-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 b24061061c75d45c82e26de28facb6f4cf2e54b8fcfcb49b057b5c33212fe878
MD5 f9818658649ce3ca30b71a605e0c3a39
BLAKE2b-256 a840276121285e78b501a7360c804997d04ddffa70c156e560463019b610f2ed

See more details on using hashes here.

Provenance

The following attestation bundles were made for meti_profil-0.1.1-cp310-abi3-manylinux_2_17_x86_64.manylinux2014_x86_64.whl:

Publisher: ci.yml on Metimer/meti_profil

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file meti_profil-0.1.1-cp310-abi3-manylinux_2_17_aarch64.manylinux2014_aarch64.whl.

File metadata

File hashes

Hashes for meti_profil-0.1.1-cp310-abi3-manylinux_2_17_aarch64.manylinux2014_aarch64.whl
Algorithm Hash digest
SHA256 4599e38733a65d1e6ec118cff464473841c8863fa8a54b98c7498428dc6fbf40
MD5 01d17079be2819f86f407013eb17e00c
BLAKE2b-256 f326113ab4d30db73e496df07a9be426864adc27e147bfad71240c47b2cff7f4

See more details on using hashes here.

Provenance

The following attestation bundles were made for meti_profil-0.1.1-cp310-abi3-manylinux_2_17_aarch64.manylinux2014_aarch64.whl:

Publisher: ci.yml on Metimer/meti_profil

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file meti_profil-0.1.1-cp310-abi3-macosx_11_0_arm64.whl.

File metadata

File hashes

Hashes for meti_profil-0.1.1-cp310-abi3-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 82cfb1fdf6e99064aa03c4d9d922afa7d9ecdebee80c983a5d81d6c9d6d988c9
MD5 cf8af2d5f4e09b3d7c239f46115957ac
BLAKE2b-256 2fe9ff654735b7225a9b8fde15b85b16cdfa40a475ab23eafddf17e071e2cb54

See more details on using hashes here.

Provenance

The following attestation bundles were made for meti_profil-0.1.1-cp310-abi3-macosx_11_0_arm64.whl:

Publisher: ci.yml on Metimer/meti_profil

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file meti_profil-0.1.1-cp310-abi3-macosx_10_12_x86_64.whl.

File metadata

File hashes

Hashes for meti_profil-0.1.1-cp310-abi3-macosx_10_12_x86_64.whl
Algorithm Hash digest
SHA256 e0b9d169528f198d8ebd2bde6715ded68f23fec94e5bfc730a953ebd01974510
MD5 1204a6423dc6a6b38e82ef8f982a2dc6
BLAKE2b-256 e0778f88911cc19c2b5dfff2f65b607ff15228d300f2b60c4688b637d8671590

See more details on using hashes here.

Provenance

The following attestation bundles were made for meti_profil-0.1.1-cp310-abi3-macosx_10_12_x86_64.whl:

Publisher: ci.yml on Metimer/meti_profil

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

Release history Release notifications | RSS feed

0.1.2

6 files

This release

0.1.1 This release

6 files

0.1.0

2 files

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page