Polars:从 Pandas 过渡指南

Polars:从 Pandas 过渡指南

如果您已经熟悉 Pandas,那么在使用 Polars 时需要注意一些关键区别。以下是一些典型的 Pandas 操作及其对应的 Polars 实现。

1. 列运算

Pandas

df["a"] = df["b"] * 10
df["c"] = df["b"] * 100

Polars

df = df.with_columns([
    (pl.col("b") * 10).alias("a"),
    (pl.col("b") * 100).alias("c"),
])

Polars 中的列运算支持并发执行,提高性能。

2. 基于判定的列运算

Pandas

df.loc[df["c"] == 2, "a"] = df.loc[df["c"] == 2, "b"]

Polars

df = df.with_column(
    pl.when(pl.col("c") == 2)
    .then(pl.col("b"))
    .otherwise(pl.col("a")).alias("a")
)

Polars 的方式更为简洁,且避免了修改原始 DataFrame。

3. 筛选

Pandas

df.loc[(df['sqft_living'] > 2500) & (df['price'] < 300000)]

Polars

df.filter(
    (pl.col("m2_living") > 2500) & (pl.col("price") < 300000)
)

4. 无需索引列

Polars 不需要索引列,这使得数据处理更简单。

5. Pandas 重塑操作

Pandas

df["size"] = df.groupby("c")["type"].transform(len)

Polars

df = df.select([
    pl.all(),
    pl.col("type").count().over("c").alias("size")
])

Polars 使用窗口函数来达到相同的目的,且可以更高效地处理。
以上代码示例展示了如何将 Pandas 中的常见操作转换为 Polars。更多详细信息和高级用法,请访问原网页

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

东方佑

你的鼓励是我最大的动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值