Обучающий «пример» состоит из нескольких строк. Количество строк в примере варьируется. Вот простой надуманный пример (обратите внимание, что на самом деле я использую LazyFrame в своем коде):
Код: Выделить всё
pl.DataFrame({
"example_id": [1, 1, 2, 2, 2, 3, 3, 3, 4, 4],
"other_col": [1, 2, 3, 4, 5, 6, 7, 8, 9, 10]
})
Код: Выделить всё
┌────────────┬───────────┐
│ example_id ┆ other_col │
│ --- ┆ --- │
│ i64 ┆ i64 │
╞════════════╪═══════════╡
│ 1 ┆ 1 │
│ 1 ┆ 2 │
│ 2 ┆ 3 │
│ 2 ┆ 4 │
│ 2 ┆ 5 │
│ 3 ┆ 6 │
│ 3 ┆ 7 │
│ 3 ┆ 8 │
│ 4 ┆ 9 │
│ 4 ┆ 10 │
└────────────┴───────────┘
Код: Выделить всё
┌────────────┬───────────┐
│ example_id ┆ other_col │
│ --- ┆ --- │
│ i64 ┆ i64 │
╞════════════╪═══════════╡
│ 2 ┆ 3 │
│ 2 ┆ 4 │
│ 2 ┆ 5 │
│ 1 ┆ 1 │
│ 1 ┆ 2 │
│ 4 ┆ 9 │
│ 4 ┆ 10 │
│ 3 ┆ 6 │
│ 3 ┆ 7 │
│ 3 ┆ 8 │
└────────────┴───────────┘
Есть ли простой способ сделать это в полярах без необходимости преобразовывать example_id в массив, перетасовывать его, разбивать на подсписки, а затем повторно выбирать из исходного фрейма данных?< /п>
Подробнее здесь: https://stackoverflow.com/questions/765 ... h-grouping