在polars中,与pandas的DataFrame.drop_duplicates()等效的函数是什么?

18

在 Polars 中,与 pandas 中的 drop_duplicates() 等价的函数是什么?

import polars as pl
df = pl.DataFrame({"a":[1,1,2], "b":[2,2,3], "c":[1,2,3]})
df

输出:

shape: (3, 3)
┌─────┬─────┬─────┐
│ a   ┆ b   ┆ c   │
│ --- ┆ --- ┆ --- │
│ i64 ┆ i64 ┆ i64 │
╞═════╪═════╪═════╡
│ 121   │
├╌╌╌╌╌┼╌╌╌╌╌┼╌╌╌╌╌┤
│ 122   │
├╌╌╌╌╌┼╌╌╌╌╌┼╌╌╌╌╌┤
│ 233   │
└─────┴─────┴─────┘

代码:

df.drop_duplicates(["a", "b"])

出现以下错误:

属性错误:未找到drop_duplicates

2个回答

29
正确的函数名称是 .unique()
import polars as pl
df = pl.DataFrame({"a":[1,1,2], "b":[2,2,3], "c":[1,2,3]})
df.unique(subset=["a","b"])

而且这会输出正确的结果:

shape: (2, 3)
┌─────┬─────┬─────┐
│ a   ┆ b   ┆ c   │
│ --- ┆ --- ┆ --- │
│ i64 ┆ i64 ┆ i64 │
╞═════╪═════╪═════╡
│ 121   │
├╌╌╌╌╌┼╌╌╌╌╌┼╌╌╌╌╌┤
│ 233   │
└─────┴─────┴─────┘

1
df.distinct() 可以不带任何参数运行。看起来它只是为了回答这个问题而被包含进来的。Polars 有非常好的文档字符串,运行 help(df.distinct)help(df.[method]) 来查找示例和默认参数。更多信息请参见 Polars Cookbook - Jenobi

2

这个函数已经改名为.unique()

请参考他们的Polars文档


网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接