You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何在Polars中使用Expr.cut并将结果追加至原DataFrame

解决Polars中pl.cut移除后的使用问题

问题背景

pl.cut已从Polars中移除,替代方案是表达式级别的.cut()和.qcut()方法。

正确用法示例

你提供的代码报错是因为仍在使用旧的pl.cut函数,现在需要直接对列表达式调用.cut()方法。在with_columns(或select)上下文中,正确写法如下:

import polars as pl

df = pl.DataFrame({"a": [1, 2, 3, 4, 5], "b": [2, 3, 4, 5, 6], "x": [1, 3, 5, 7, 9]})
# 对x列执行cut操作,将分组结果命名为x_bins并追加到原DataFrame
df_with_bins = df.with_columns(pl.col("x").cut(bins=[2, 4, 6]).alias("x_bins"))
print(df_with_bins)

执行后会生成新列x_bins,包含x列按指定区间分组后的结果。

补充说明

  • .cut()方法直接作用于列表达式(pl.col("x")),符合Polars的表达式API设计风格
  • 若需要按分位数分组,可使用.qcut()方法,用法类似:pl.col("x").qcut(n=3).alias("x_quantile_bins")
  • with_columns不会修改原DataFrame,而是返回包含新列的新DataFrame

内容的提问来源于stack exchange,提问作者lebesgue

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.08.03 10:00:56