Код: Выделить всё
df = pl.DataFrame({
'order': [38681.0, 38692.0, 38680.0, 38693.0],
'shipto': ["471433", "239269", "471433","239269"],
'value': [10,20,30,None]
})
Базовый скрипт:
Код: Выделить всё
df = (
df
.group_by('shipto')
.agg(
pl.col('order').map_elements(lambda x: str(x)).alias('order_list'),
pl.sum('value')
)
)
Код: Выделить всё
┌────────┬──────────────────┬───────┐
│ shipto ┆ order_list ┆ value │
│ --- ┆ --- ┆ --- │
│ str ┆ str ┆ i64 │
╞════════╪══════════════════╪═══════╡
│ 239269 ┆ shape: (2,) ┆ 20 │
│ ┆ Series: '' [f64] ┆ │
│ ┆ [… ┆ │
│ 471433 ┆ shape: (2,) ┆ 40 │
│ ┆ Series: '' [f64] ┆ │
│ ┆ [… ┆ │
└────────┴──────────────────┴───────┘
Код: Выделить всё
┌────────┬────────────────────┬───────┐
│ shipto ┆ order ┆ value │
│ --- ┆ --- ┆ --- │
│ str ┆ list[f64] ┆ i64 │
╞════════╪════════════════════╪═══════╡
│ 239269 ┆ [38692.0, 38693.0] ┆ 20 │
│ 471433 ┆ [38681.0, 38680.0] ┆ 40 │
└────────┴────────────────────┴───────┘
Конечно, есть какая-то базовая ошибка, но мы будем очень признательны за продолжение борьбы с этим и за любую помощь.
Подробнее здесь: https://stackoverflow.com/questions/756 ... te-to-list