在Polars中通过附加列表进行聚合

2 投票
1 回答
60 浏览
提问于 2025-04-12 22:30

在Python的Polars库中,我想通过把列表连接起来来进行聚合,而不是创建一个嵌套列表。比如,我想根据id来聚合这个数据表。

import polars as pl

df = pl.DataFrame({
    'id': [1, 1],
    'name': [["Bob"], ["Mary", "Sue"]],
})
id name
1 ["Bob"]
1 ["Mary", "Sue"]

我希望得到这样的结果:

id name
1 ["Bob", "Mary", "Sue"]

如果我使用 df.group_by('id').agg("name"),我得到的是一个嵌套列表,这不是我想要的:

id name
1 [["Bob"], ["Mary", "Sue"]]

1 个回答

2

试着在你的名字那一列上使用explode函数。

result_df = df.group_by('id').agg(pl.col('name').explode())

撰写回答