在Polars中通过附加列表进行聚合
在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())