A lightweight ClickHouse helper package focused on DataFrame workflows.
It provides:
connect: thread-local ClickHouse client managementto_pandas: run SQL and returnpandas.DataFrameto_polars: run SQL and returnpolars.DataFrameraw_ck_download: export query results to Parquet via ClickHouse client
Replace <owner> with your GitHub account or org.
uv add "git+https://github.com/<owner>/clickhouse_df.git"Pin to a tag:
uv add "git+https://github.com/<owner>/clickhouse_df.git@v0.1.5"You can also install directly into an environment:
uv pip install "git+https://github.com/<owner>/clickhouse_df.git"from clickhouse_df import connect, to_pandas, to_polars
conn = connect(["127.0.0.1:9000"], user="default", password="")
df_pd = to_pandas("SELECT number FROM system.numbers LIMIT 5", conn)
df_pl = to_polars("SELECT number FROM system.numbers LIMIT 5", conn)Raw export to Parquet:
from clickhouse_df import raw_ck_download
settings = {
"urls": ["127.0.0.1:9000"],
"user": "default",
"password": "",
}
raw_ck_download("SELECT number FROM system.numbers LIMIT 5", "./sample.parquet", settings)uv sync
uv run ruff format --check .
uv run ruff check .
uv run python -m unittest discover -s tests
uv buildProject version is controlled in __version__.py.
MIT