用途:Polars 是面向 Python 的高性能 DataFrame 库,基于 Apache Arrow 与 Rust 后端,提供表达式 API、惰性求值和自动并行化,用于内存级表格数据的处理、转换与分析。适合 100MB 至 100GB 且能放入内存的数据集、ETL 流水线、需要比 pandas 更快(资料称典型提速 10–100 倍)的场景、惰性查询优化、大表连接与透视、Parquet/CSV/JSON 及云存储读取、窗口函数与分组聚合。超出内存的数据建议改用 Dask 或 Vaex,GPU 加速建议用 cuDF。
主要能力:DataFrame 的选择、过滤、增改列、排序、抽样;group_by 聚合与 over() 窗口函数;inner/left/anti/asof 等多种连接;pivot、unpivot、explode 等重塑;CSV、Parquet、NDJSON、Excel、数据库与 S3/GCS/Azure 读写;字符串、日期时间、列表与 when/then/otherwise 条件表达式;惰性求值支持谓词与投影下推、join 重排,并可用 collect(streaming=True) 分批处理、sink_parquet 直接落盘。
使用方式:安装 pip install polars,可选 pip install polars[all]、polars[pandas]、polars[numpy]、connectorx sqlalchemy。用 pl.DataFrame 或 pl.read_* 创建即时对象,用 pl.scan_* 或 df.lazy() 创建惰性对象,经 .collect() 执行;用 result.explain() 查看优化计划。
限制与注意:无索引,仅按位置访问行;类型严格,需显式 .cast();应尽量使用表达式 API,避免 .map_elements() 与逐行 Python 循环;低基数字符串建议转 Categorical;Parquet 通常优于 CSV。资料未提供收费、价格与平台信息。