如果你不知道瓶颈在哪里,你就无法优化你的代码。
现在,DataPolars 提供了一个性能分析工具来展示它的工作情况。
你可以通过在任何延迟查询上调用 .profile 来获取这些数据。更好的是,我们还可以得到一个图表来可视化每一步所花费的时间。
在这个例子中,我们从 CSV 文件中读取数据,进行分组,然后排序。
(
pl.scan_csv(csvFile)
.groupby('Pclass')
.agg(
pl.col("Age").mean()
)
.sort("Pclass")
.profile(show_plot=True,figsize=(6,3))
)
在图表中,我们看到读取CSV文件是瓶颈所在。因此,我们应该将精力集中在这一步骤上,采用诸如指定数据类型(dtypes)或更好的做法,将其转换为Parquet或Arrow格式等策略。
往期热门文章:
从 Pandas 到 Polars 二十六:在Polars中,不要遍历列
从 Pandas 到 Polars 二十三:如果你的数据已经排序,Polars可以为你提供助力
从 Pandas 到 Polars 十八:数据科学 2025,对未来几年内数据科学领域发展的预测或展望
从 Pandas 到 Polars 十三:流式处理的关键参数
从 Pandas 到 Polars 十:“Polars 表达式“是什么?