import polars as pl
df = pl.DataFrame(
{
'Letter': ['A', 'A', 'B', 'B', 'B', 'C', 'C', 'D','D','E'],
'Value': [1, 2, 3, 4, 5, 6, 7, 8, 9,10]
}
)
我想将Letter
它们对应的分组并收集Value
在一个列表中。
相关的 Pandas 问题:How to group dataframe rows into list in pandas groupby
我知道 pandas 代码在这里不起作用:
df.group_by('a')['b'].apply(list)
TypeError: 'GroupBy' object is not subscriptable
输出将是:
| A ┆ [1, 2] │
│ B ┆ [3, 4, 5] │
│ C ┆ [6, 7] │
│ D ┆ [8, 9] │
│ E ┆ [10] |
非常简单:如果您没有在
pl.DataFrame.group_by().agg()
构造中指定聚合函数,则组中的所有值将聚合到一个列表中。你可以这样做。如果您希望组的顺序与输入数据一致,
maintain_order=True
则需要。这将打印