python

关注公众号 jb51net

关闭
首页 > 脚本专栏 > python > python polars库数据处理

掌握python polars库进行高效高速的数据处理。

作者:小寒聊python

这篇文章主要介绍了python polars库进行高效高速的数据处理技巧详解,有需要的朋友可以借鉴参考下,希望能够有所帮助,祝大家多多进步,早日升职加薪

python库polars

https://github.com/pola-rs/polars 

Polars 是一个使用 Rust 编写的高性能数据处理库,它提供了一个类似于 pandas 的 API,但专注于高效和高速的数据处理

Polars 的语法与 Pandas 非常相似,因此从一个库到另一个库的转换非常简单。

特点

Polars 提供了两种主要的 API

DataFrame API 和 Lazy API。这两种 API 都支持丰富的数据操作功能,但它们在处理数据的方式上有所不同。

DataFrame API

Lazy API

库的安装

我们可以直接使用 pip 来进行库的安装。

pip install polars

性能对比

首先,我们创建一个大型的虚拟数据集,它包括 100 万行和 51 列。

import pandas as pd
import numpy as np
df = pd.DataFrame(np.random.randint(0, 100, size=(1000000, 50))) 
df = df.rename(columns={i:f"x_{i} " for i in range(50)}) 
df["category"] = ["A", "B", "C", "D"] * 2500000
df.to_csv('data.csv')

加载数据集

import polars as pl 
df_pl = pl.read_csv("data.csv") 
df_pd = pd.read_csv("data.csv")

过滤操作

我们将对操作进行计时,以便我们可以比较 polars 和 Pandas 的性能。

%time df_pd_d = df[df["category"]=="D"] 
%time df_pl_d = df_pl.filter(pl.col("category")=="D")

pandas 使用的时间是 231 ms,而 polars 只需要 70.6 ms

多条件过滤

%time df_pd_d=df_pd[(df_pd["category"] == "D") & (df_pd["x_1 "] > 10)]
%time df_pl_d=df_pl.filter((pl.col("category")=="D") & (pl.col("x_1 ") > 10))

以上就是掌握python polars库进行高效高速的数据处理。的详细内容,更多关于python polars库数据处理的资料请关注脚本之家其它相关文章!

您可能感兴趣的文章:
阅读全文