Polars – разблокировать фрейм данных на основе значения столбцаPython

Программы на Python
Ответить
Anonymous
 Polars – разблокировать фрейм данных на основе значения столбца

Сообщение Anonymous »

Я пытаюсь выполнить следующую операцию
Входные данные:

Код: Выделить всё

import polars as pl

df = pl.DataFrame({
"left": ["One", "One", "One", "One", "Two"],
"center": ["P", "P", "I", "I", "I"],
"right": [100, 100, 100, 100, 100]
})

Код: Выделить всё

shape: (5, 3)
┌──────┬────────┬───────┐
│ left ┆ center ┆ right │
│ ---  ┆ ---    ┆ ---   │
│ str  ┆ str    ┆ i64   │
╞══════╪════════╪═══════╡
│ One  ┆ P      ┆ 100   │
│ One  ┆ P      ┆ 100   │
│ One  ┆ I      ┆ 100   │
│ One  ┆ I      ┆ 100   │
│ Two  ┆ I      ┆ 100   │
└──────┴────────┴───────┘
Ожидаемый результат:

Код: Выделить всё

shape: (2, 3)
┌──────┬─────┬─────┐
│ left ┆ P   ┆ I   │
│ ---  ┆ --- ┆ --- │
│ str  ┆ i64 ┆ i64 │
╞══════╪═════╪═════╡
│ One  ┆ 200 ┆ 200 │
│ Two  ┆ 0   ┆ 100 │
└──────┴─────┴─────┘
В пандах мы используем

Код: Выделить всё

(df.to_pandas()
.groupby(["left", "center"])["right"]
.sum()
.unstack(fill_value=0)
)
Однако я не могу повторить это в полярах? есть предложения?


Подробнее здесь: https://stackoverflow.com/questions/780 ... lumn-value
Ответить

Быстрый ответ

Изменение регистра текста: 
Смайлики
:) :( :oops: :roll: :wink: :muza: :clever: :sorry: :angel: :read: *x)
Ещё смайлики…
   
К этому ответу прикреплено по крайней мере одно вложение.

Если вы не хотите добавлять вложения, оставьте поля пустыми.

Максимально разрешённый размер вложения: 15 МБ.

Вернуться в «Python»