Надоело переключаться между SQL и pandas?
Ibis — это библиотека, которая объединяет лучшее из двух миров: SQL-запросы и Python-пайплайны в одном коде.
📦 Установка (с DuckDB и примерами):
bash pip install 'ibis-framework[duckdb,examples]'
🔍 Пример:
import ibis
penguins = ibis.examples.penguins.fetch()
# SQL внутри Python
res = penguins.sql(\"""
SELECT species, island, count(*) AS count
FROM penguins GROUP BY 1, 2
\""")
# Python-стиль фильтрации и сортировки
res.order_by("count")
┏━━━━━━━━━━━┳━━━━━━━━━━━┳━━━━━━━┓
┃ species ┃ island ┃ count ┃
┡━━━━━━━━━━━╇━━━━━━━━━━━╇━━━━━━━┩
│ string │ string │ int64 │
├───────────┼───────────┼───────┤
│ Adelie │ Biscoe │ 44 │
│ Adelie │ Torgersen │ 52 │
│ Adelie │ Dream │ 56 │
│ Chinstrap │ Dream │ 68 │
│ Gentoo │ Biscoe │ 124 │
└───────────┴───────────┴───────┘
📌 Что умеет Ibis: — SQL-прослойка прямо по датафреймам
— Один и тот же код работает с DuckDB, PostgreSQL, BigQuery, SQLite и др.
— Унифицированный синтаксис независимо от движка
— Отлично вписывается в data science-пайплайны
📊 Где пригодится:
— Аналитика
— Дашборды
— EDA и быстрые прототипы
— Интеграция SQL в ноутбуках без боли.
Совместим с Jupyter, Airflow, и всей питоновской экосистемой.
🔗 Подробнее
🔗 Github
@pythonl