我正在尝试从极坐标数据帧进行聚合。但我没有得到我所期待的。
这是问题的最小复制:
import polars as pl
# Create a DataFrame
df = pl.DataFrame({"category": ["A", "A", "B", "B", "B"],
"value": [1., 2., 3., 4., 5.]})
# Group by 'category' and sum 'value'
result = df.group_by("category").agg({"value": pl.sum})
# Print the result
print(result)
我得到:
TypeError: specifying aggregations as a dictionary is not supported
但我想得到:
┌──────────┬─────────────────┐
│ category ┆ value │
│ --- ┆ --- │
│ str ┆ list[f64] │
╞══════════╪═════════════════╡
│ A ┆ 3.0 │
│ B ┆ 12.0 │
└──────────┴─────────────────┘
对问题出在哪里有什么想法吗?预先感谢。
您只需将表达式传递到
agg
函数中,而不是字典:
result = df.group_by("category").agg(pl.col('value').sum())