CleverCSV — это пакет на Python, который призван решить некоторые проблемы CSV файлов, сохраняя при этом их преимущества.
#Python #CSV #CleverCSV #DataScience #MachineLearning #DataCleaning #DataWrangling #OpenSource #DataAnalysis #DataEngineering
https://github.com/alan-turing-institute/CleverCSV
Please open Telegram to view this post
VIEW IN TELEGRAM
GitHub
GitHub - alan-turing-institute/CleverCSV: CleverCSV is a Python package for handling messy CSV files. It provides a drop-in replacement…
CleverCSV is a Python package for handling messy CSV files. It provides a drop-in replacement for the builtin CSV module with improved dialect detection, and comes with a handy command line applica...
🔥3 3👍2⚡1
DeltaBase — это легкое и комплексное решение для управления Delta Tables как в локальных, так и в облачных средах.
#DataEngineering #DeltaTables #DataVersioning #CloudData #DataManagement #DataOps #Polars #DeltaLake #DataConsistency
https://github.com/uname-n/deltabase
Please open Telegram to view this post
VIEW IN TELEGRAM
GitHub
GitHub - uname-n/deltabase: a lightweight, comprehensive solution for managing delta tables built on polars and deltalake
a lightweight, comprehensive solution for managing delta tables built on polars and deltalake - uname-n/deltabase
2👍3🔥2
PyFunctional — мощная Python-библиотека для работы с потоками данных в функциональном стиле!
#Python #PyFunctional #DataPipeline #FunctionalProgramming #BigData #DataProcessing #SQLite #Pandas #DataEngineering #PythonTips #OpenSource #DevTools
https://github.com/EntilZha/PyFunctional
Please open Telegram to view this post
VIEW IN TELEGRAM
GitHub
GitHub - EntilZha/PyFunctional: Python library for creating data pipelines with chain functional programming
Python library for creating data pipelines with chain functional programming - EntilZha/PyFunctional
1👍2🔥2
aiosqlitepool — пул соединений для SQLite в asyncio-приложениях.
aiosqlitepool — это высокопроизводительный пул соединений для асинхронных SQLite-приложений. Он устраняет издержки на создание/закрытие соединений и ускоряет работу с БД за счёт повторного использования «горячих» соединений.
async with pool.connection() as conn:
await conn.execute("INSERT INTO users VALUES (?)", ("Alice",))
await conn.commit()
#Python #SQLite #AsyncIO #FastAPI #aiosqlite #aiosqlitepool #Backend #Performance #DevTools #WebDev #DataEngineering #Database
https://github.com/slaily/aiosqlitepool
Please open Telegram to view this post
VIEW IN TELEGRAM
FastLanes — это сверхбыстрый, независимый от внешних библиотек формат хранения табличных данных с открытым исходным кодом и поддержкой Python, C++ и Rust.
import pyfastlanes
conn = pyfastlanes.connect()
conn.inline_footer().read_csv("data/csv_dir").to_fls("data.fls")
reader = conn.read_fls("data.fls")
reader.to_csv("decoded.csv")
#FastLanes #BigData #Compression #ParquetAlternative #Python #Rust #Cplusplus #DataEngineering #OpenSource #GPU #SIMD #DataProcessing #SIGMOD #VLDB #CSV #FLS #Разработка #Производительность #НаучныеИсследования
https://github.com/cwida/FastLanes
Please open Telegram to view this post
VIEW IN TELEGRAM
GitHub
GitHub - cwida/FastLanes: Next-Gen Big Data File Format
Next-Gen Big Data File Format. Contribute to cwida/FastLanes development by creating an account on GitHub.
1⚡3👍2🔥1
riffq — это инструмент на Python и Rust, который позволяет делать из ваших данных и кода полноценную базу данных с интерфейсом PostgreSQL.
#Python #Rust #PostgreSQL #DataEngineering #DuckDB #Polars #Pandas #BI #FederatedQuery #riffq
https://github.com/ybrs/riffq
Please open Telegram to view this post
VIEW IN TELEGRAM
GitHub
GitHub - ybrs/riffq: Connect to your data in python with postgresql protocol (pandas, polars, duckdb etc)
Connect to your data in python with postgresql protocol (pandas, polars, duckdb etc) - ybrs/riffq
1 3 3 1
fenic — это фреймворк на Python (вдохновлён PySpark) для построения AI и агентных приложений.
Он объединяет привычные DataFrame-операции с семантическим интеллектом и оптимизацией под работу с LLM.
pip install fenic
#Python #AI #LLM #DataFrame #Fenic #PySpark #NLP #DataEngineering #MachineLearning
https://github.com/typedef-ai/fenic
Please open Telegram to view this post
VIEW IN TELEGRAM
GitHub
GitHub - typedef-ai/fenic: Semantic DataFrames for humans and agents
Semantic DataFrames for humans and agents. Contribute to typedef-ai/fenic development by creating an account on GitHub.
2🔥3 2⚡1👍1
caniscrape — это инструмент разведки для парсинга.
Он анализирует сайт и показывает, насколько сложно будет его скрапить — до того, как вы напишете хоть строчку кода.
#Python #WebScraping #Caniscrape #BotDetection #Playwright #DataEngineering #OpenSource #AIReconnaissance
https://github.com/ZA1815/caniscrape
Please open Telegram to view this post
VIEW IN TELEGRAM
GitHub
GitHub - ZA1815/caniscrape
Contribute to ZA1815/caniscrape development by creating an account on GitHub.
🔥4👍2⚡1
tablediff — это минималистичный CLI‑инструмент для diff’а данных между двумя таблицами (dev vs prod, разные БД, миграции и пр.), построенный поверх reladiff и уже проверенный с DuckDB и Snowflake.
tablediff TABLE_A TABLE_B --pk id --conn duckdb://./sample.duckdb
или
tablediff DEV.MART.USERS PROD.MART.USERS --pk USER_ID --conn "snowflake://..."
#tablediff #Python #CLI #DataEngineering #DuckDB #Snowflake #DataQuality #DataDiff #ETL #Analytics
https://github.com/oleg-agapov/tablediff
Please open Telegram to view this post
VIEW IN TELEGRAM
GitHub
GitHub - oleg-agapov/tablediff: CLI tool for data diffing between two tables
CLI tool for data diffing between two tables. Contribute to oleg-agapov/tablediff development by creating an account on GitHub.
1 3👍1
Jetbase — это лёгкий миграционный инструмент для БД в Python‑проектах: SQL‑файлы с версиями, апгрейды/роллбеки, валидация и блокировка миграций, плюс поддержка Postgres, SQLite, Snowflake и MySQL.
pip install jetbase → jetbase init создаёт каталог jetbase/ c migrations/ и env.py.V<version>__<description>.sql, c блоками -- upgrade и -- rollback, и командами jetbase upgrade, jetbase history, jetbase status.jetbase/env.py.psycopg2 для Postgres или соответствующий Snowflake/MySQL драйвер.Настройка подключения, затем:
jetbase new "create users table" -v 1
# редактируем V1__create_users_table.sql
jetbase upgrade
SQL: в
-- upgrade создаём таблицы, в -- rollback — удаляем, что упрощает откаты. #Jetbase #Python #DatabaseMigrations #PostgreSQL #SQLite #Snowflake #MySQL #SQLAlchemy #DevTools #DataEngineering
https://github.com/jetbase-hq/jetbase
Please open Telegram to view this post
VIEW IN TELEGRAM
GitHub
GitHub - jetbase-hq/jetbase
Contribute to jetbase-hq/jetbase development by creating an account on GitHub.
1👍2🔥1 1
Arbalister — это расширение для JupyterLab, которое позволяет двойным кликом открывать табличные файлы (Parquet, CSV, Avro, ORC, SQLite и другие Arrow‑совместимые форматы) прямо в интерфейсе без написания кода. Расширение состоит из серверной части на Python и клиентской на TypeScript, общающихся через Arrow IPC‑стримы.
pip install arbalister (требуется JupyterLab >= 4.5.0). #JupyterLab #Arbalister #ApacheArrow #Parquet #SQLite #DataEngineering #DataScience #Python #QuantStack #OpenSource
https://github.com/QuantStack/Arbalister
Please open Telegram to view this post
VIEW IN TELEGRAM
GitHub
GitHub - QuantStack/Arbalister: Dataframe viewer for Jupyter over Arrow
Dataframe viewer for Jupyter over Arrow. Contribute to QuantStack/Arbalister development by creating an account on GitHub.
1⚡2👍2 2
silkworm-rs — async‑first фреймворк для веб‑скрейпинга на Python с «двигателем» на Rust: HTTP‑клиент rnet (имперсонация браузера) + быстрый HTML‑парсер scraper-rs, минимальная модель Spider/Request/Response, middlewares и pipelines без тонны бойлерплейта. Он сразу даёт конкурентный движок с backpressure (очередь по умолчанию
concurrency * 10), таймаутами на запрос, дедупликацией по URL и структурированным логгированием со статистикой по RPS, памяти, количеству URL и ошибок.request.meta["proxy"].Request; HTMLResponse даёт удобные селекторы (select, select_first) и response.follow() для переходов.SkipNonHTMLMiddleware для отбрасывания не‑HTML.run_spider), uvloop на *nix, winloop на Windows и trio‑бэкенд (run_spider_trio) — для I/O‑bound задач это даёт 2–4x прирост.fetch_html_cdp, CDPClient и spider‑примеры). pip install silkworm-rs
# или (рекомендуется)
uv pip install --prerelease=allow silkworm-rs
Дальше — наследуете
Spider, реализуете async def parse(...), yield’ите словари или Request, а run_spider(...) берёт на себя конкурентный движок, middleware’ы и выгрузку данных в нужные пайплайны.#Python #Rust #WebScraping #AsyncIO #silkworm #rnet #scraperRS #DataEngineering #ETL #uvloop
https://github.com/BitingSnakes/silkworm
Please open Telegram to view this post
VIEW IN TELEGRAM
GitHub
GitHub - BitingSnakes/silkworm: Async web scraping framework on top of Rust. Works with Free-threaded Python (`PYTHON_GIL=0`).
Async web scraping framework on top of Rust. Works with Free-threaded Python (`PYTHON_GIL=0`). - BitingSnakes/silkworm
Pointblank — это Python‑библиотека для проверки качества табличных данных (Polars, Pandas, SQL/файлы через Ibis) с упором на удобство и понятные отчёты.
.Validate(...).col_vals_...().interrogate() и интерактивные HTML‑отчёты.pb: храните правила в git и гоняйте валидацию в CI/CD одной командой.pip install pointblank
#python #datavalidation #dataquality #pointblank #datascience #dataengineering
https://github.com/posit-dev/pointblank
Please open Telegram to view this post
VIEW IN TELEGRAM
GitHub
GitHub - posit-dev/pointblank: Data validation toolkit for assessing and monitoring data quality.
Data validation toolkit for assessing and monitoring data quality. - posit-dev/pointblank
👍3 2⚡1
Docglow — это генератор документации нового поколения для проектов dbt™ Core, который берет ваши метаданные и превращает их в современное, быстрое и интерактивное SPA-приложение. И самое главное — для этого больше не нужен платный dbt Cloud!
.html файл. Идеально, чтобы просто скинуть коллегам в Slack!--fail-under).pip install docglow
docglow generate --project-dir /path/to/dbt/project --output-dir ./site
docglow serve --dir ./site
#dbt #DataEngineering #DataAnalytics #Python #DataOps #AnalyticsEngineering #OpenSource #Docglow
https://github.com/docglow/docglow
Please open Telegram to view this post
VIEW IN TELEGRAM
GitHub
GitHub - docglow/docglow: Modern documentation site generator for dbt Core — lineage explorer, health scoring, full-text search.…
Modern documentation site generator for dbt Core — lineage explorer, health scoring, full-text search. Live demo: https://demo.docglow.com - docglow/docglow
1⚡2 2👍1
Datanomy - это консольная утилита для изучения "анатомии" ваших столбцевых (columnar) файлов данных.
Она предоставляет удобный интерактивный интерфейс прямо в терминале для просмотра структуры, метаданных и внутренней организации ваших файлов. На данный момент инструмент поддерживает работу с форматом Parquet.
Через современный пакетный менеджер
uv:uv tool install datanomy
или через классический
pip:pip install datanomy
datanomy data.parquet
Если не хотите устанавливать пакет глобально, можно запустить на лету (через uvx):
uvx datanomy data.parquet
#Datanomy #Python #DataEngineering #DataScience #Parquet #CLI #OpenSource #Терминал #BigData
https://github.com/raulcd/datanomy
Please open Telegram to view this post
VIEW IN TELEGRAM
GitHub
GitHub - raulcd/datanomy: Dissecting data structures
Dissecting data structures. Contribute to raulcd/datanomy development by creating an account on GitHub.
1👍2🔥2 1
Nbpipe - это легковесная утилита, которая позволяет запускать последовательность Jupyter-ноутбуков как единый рабочий процесс (workflow). Вы можете управлять выполнением прямо из командной строки (CLI) или через удобную боковую панель в JupyterLab.
Это идеальное решение для ситуаций, когда ваш процесс разбит на несколько логических шагов (например: подготовка данных -> обучение модели ->генерация отчета), и их нужно выполнять строго друг за другом.
pip install nbpipe
.nbpipe/ в корне вашего проекта.my_workflow.yaml):name: my_workflow
steps:
- notebook: prepare_data.ipynb
output: data/processed.csv
- notebook: train_model.ipynb
nbpipe run .nbpipe/my_workflow.yaml
notebook (обязательное) — указывает путь к ноутбуку относительно корня проекта.output (опциональное) — файл, который должен быть сгенерирован после выполнения этого шага. Работает как проверка качества: если ноутбук отработал, а нужный файл не появился — пайплайн упадет с ошибкой. Поле поддерживает маски файлов (например, report_*.csv).#Python #Jupyter #JupyterLab #DataScience #DataEngineering #MachineLearning #DevTools #Workflow #Автоматизация
https://github.com/ngafar/nbpipe
Please open Telegram to view this post
VIEW IN TELEGRAM
GitHub
GitHub - ngafar/nbpipe: Run sequences of Jupyter notebooks as a workflow from the command line or the JupyterLab sidebar
Run sequences of Jupyter notebooks as a workflow from the command line or the JupyterLab sidebar - ngafar/nbpipe
1👍3⚡2
PyTrendy — это надежное решение для поиска и анализа трендов во временных рядах.
В отличие от большинства других библиотек для тренд-детекшена, PyTrendy устойчива к сильному шуму и плоским («флэт») участкам данных. Она с высокой точностью определяет как плавные (gradual), так и резкие (abrupt) изменения графиков, претендуя на звание лучшего пакета для поиска трендов на Python.
pip install pytrendy
В коде инструмент используется буквально в несколько строк:
import pytrendy as pt
# Загружаем тестовые данные
df = pt.load_data('series_synthetic')
# Запускаем поиск трендов
results = pt.detect_trends(df, date_col='date', value_col='gradual', plot=True)
results.print_summary()
В консоли вы получите структурированный и понятный отчет:
Detected: - 3 Uptrends. - 3 Downtrends. - 3 Flats. - 0 Noise.
The best detected trend is Down between dates 2025-05-09 - 2025-06-17
Помимо краткой сводки, библиотека возвращает подробный датафрейм, где для каждого найденного участка указаны направление (Up/Down/Flat), даты начала и конца, длительность в днях, общее изменение значения (
total_change) и класс тренда.#Python #TimeSeries #DataScience #Analytics #PyTrendy #DataEngineering #OpenSource #MachineLearning #АнализДанных
https://github.com/RussellSB/pytrendy
Please open Telegram to view this post
VIEW IN TELEGRAM
GitHub
GitHub - RussellSB/pytrendy: Trend Detection in Python. Applicable for real-world industry use cases in time series.
Trend Detection in Python. Applicable for real-world industry use cases in time series. - RussellSB/pytrendy
5⚡4👍3
PySuricata - это быстрый и легковесный инструмент для исследовательского анализа данных (EDA) на Python, построенный на потоковых алгоритмах.
Главная проблема большинства инструментов профилирования данных — они требуют загрузки всего датасета в оперативную память и выполняют множество тяжелых прогонов. PySuricata считывает данные всего за один проход (single pass), сохраняя фиксированный расход RAM независимо от количества строк в таблице.
pandas, polars (включая LazyFrame), файлами Parquet, Arrow IPC (.arrow, .feather) и запросами DuckDB без промежуточной материализации всего фрейма.summarize() — отдает чистый версионированный JSON со метриками;compare() — рассчитывает смещение признаков между двумя выборками;pysuricata check / официальный GitHub Action — блокирует пайплайн (exit code $\ne 0$), если превышен процент пропусков или обнаружен дрейф данных.import pandas as pd
from pysuricata import profile
df = pd.read_csv("large_dataset.csv")
# Анализируем данные и сохраняем автономный отчет
profile(df).save_html("report.html")
Анализ файлов напрямую (без загрузки в DataFrame):
from pysuricata import profile
# Потоковое чтение Parquet-файла без перегрузки RAM
report = profile("data/events.parquet")
report.save_html("events_report.html")
pip install pysuricata
# или через uv:
uv add pysuricata
#Python #PySuricata #DataScience #EDA #Pandas #Polars #DuckDB #DataEngineering #MachineLearning #OpenSource #DevTools
https://github.com/alvarodiez20/pysuricata
Please open Telegram to view this post
VIEW IN TELEGRAM
GitHub
GitHub - alvarodiez20/pysuricata: Single-pass exploratory data analysis on streaming algorithms. Bounded memory at any dataset…
Single-pass exploratory data analysis on streaming algorithms. Bounded memory at any dataset size, pandas and Polars, self-contained HTML reports. - alvarodiez20/pysuricata
3🔥3👍2 1
Flowfile - это инструмент для визуального построения ETL-пайплайнов, который компилируется в высокопроизводительный код на Polars.
Главная идея проекта — стереть грань между визуальным no-code/low-code и классической разработкой: визуальный холст (canvas) с нодами и Python-код являются двумя синхронными представлениями одного и того же графа вычислений.
Flowfile работает без тяжелых кластеров (вроде Apache Spark): все преобразования выполняются in-process на базе Polars, утилизируя ресурсы одной машины на максимум.
import polars as pl) без необходимости тащить Flowfile на прод. Графы сохраняются в человекочитаемом YAML для версионирования в Git.demo.flowfile.org без установки и сервера;pip или готовые десктопные приложения (Tauri);Вы можете описать пайплайн кодом через API в стиле Polars и в один вызов открыть его в визуальном редакторе:
import flowfile as ff
from flowfile import col, open_graph_in_editor
# Загрузка и трансформация данных
df = ff.from_dict({
"category": ["A", "B", "A", "C", "B"],
"value": [100, 200, 150, 300, 250]
})
result = (
df.filter(col("value") > 150)
.with_columns((col("value") * 2).alias("double_value"))
.group_by("category")
.agg(col("value").sum().alias("total"))
)
# Открытие собранного графа в визуальном интерфейсе
open_graph_in_editor(result.flow_graph)
Установка и запуск UI на локальной машине (Python 3.10–3.13):
pip install Flowfile
flowfile run ui
Командный запуск в Docker Compose:
git clone https://github.com/edwardvaneechoud/Flowfile.git
cd Flowfile
docker compose up -d
# Веб-интерфейс будет доступен по адресу http://localhost:8080
#Flowfile #Python #Polars #ETL #DataEngineering #DataScience #SQL #DeltaLake #DuckDB #OpenSource #DevTools #DataPipelines
https://github.com/Edwardvaneechoud/Flowfile
Please open Telegram to view this post
VIEW IN TELEGRAM
GitHub
GitHub - Edwardvaneechoud/Flowfile: Flowfile is a visual ETL tool and Python library combining drag-and-drop workflows with Polars…
Flowfile is a visual ETL tool and Python library combining drag-and-drop workflows with Polars dataframes. Build data pipelines visually, define flows programmatically with a Polars-like API, and e...
👍4 1