Pandas vs Polars: прогнал бенчмарк на 12 млн строк
Взял реальный датасет — логи за полгода, 12 млн строк, 45 колонок. Результат удивил даже меня.
import polars as pl
df = pl.scan_csv("logs.csv")
result = (
df.group_by("user_id")
.agg([
pl.col("amount").sum(),
pl.col("event").count()
])
.collect()
)Среднее из 5 прогонов:
- Чтение CSV: Pandas 34с → Polars 4с
- GroupBy + Agg: Pandas 12с → Polars 1.5с
- Join: Pandas 8с → Polars 0.9с
Polars пока не заменит Pandas полностью — экосистема, ML-библиотеки. Но для ETL и пайплайнов — однозначно стоит попробовать.