Повторная выборка по группе в PolarsPython

Программы на Python
Ответить Пред. темаСлед. тема
Anonymous
 Повторная выборка по группе в Polars

Сообщение Anonymous »

Я пытаюсь создать симулятор Монте-Карло для своих данных в Polars. Я пытаюсь сгруппировать по столбцу, выполнить повторную выборку групп, а затем распаковать списки агрегации обратно в их исходную последовательность. Я продумал все до последнего шага, но застрял и начинаю думать, что поступил неправильно.
df_original = pl.DataFrame({
'colA': ['A','A','B','B','C','C'],
'colB': [11,12,13,14,15,16],
'colC': [21,22,23,24,25,26]})

shape: (6, 3)
┌──────┬──────┬──────┐
│ colA ┆ colB ┆ colC │
│ --- ┆ --- ┆ --- │
│ str ┆ i64 ┆ i64 │
╞══════╪══════╪══════╡
│ A ┆ 11 ┆ 21 │
│ A ┆ 12 ┆ 22 │
│ B ┆ 13 ┆ 23 │
│ B ┆ 14 ┆ 24 │
│ C ┆ 15 ┆ 25 │
│ C ┆ 16 ┆ 26 │
└──────┴──────┴──────┘

Я группирую и меняю выборку следующим образом. Обратите внимание, что здесь я использую начальное значение, поэтому этот пример воспроизводим, но он будет запускаться много-много раз без начальных значений в конце.
df_resampled = (
df_original
.group_by('colA', maintain_order=True)
.agg(pl.all())
.sample(fraction=1.0, shuffle=True, seed=9)
)

shape: (3, 3)
┌──────┬───────────┬───────────┐
│ colA ┆ colB ┆ colC │
│ --- ┆ --- ┆ --- │
│ str ┆ list[i64] ┆ list[i64] │
╞══════╪═══════════╪═══════════╡
│ B ┆ [13, 14] ┆ [23, 24] │
│ C ┆ [15, 16] ┆ [25, 26] │
│ A ┆ [11, 12] ┆ [21, 22] │
└──────┴───────────┴───────────┘

Я не могу понять, как разобрать списки и получить вот это. Исходный порядок внутри каждой группы сохраняется. При каждом заходе перетасовываются только сами группы.
shape: (6, 3)
┌──────┬──────┬──────┐
│ colA ┆ colB ┆ colC │
│ --- ┆ --- ┆ --- │
│ str ┆ i64 ┆ i64 │
╞══════╪══════╪══════╡
│ B ┆ 13 ┆ 23 │
│ B ┆ 14 ┆ 24 │
│ C ┆ 15 ┆ 25 │
│ C ┆ 16 ┆ 26 │
│ A ┆ 11 ┆ 21 │
│ A ┆ 12 ┆ 22 │
└──────┴──────┴──────┘


Подробнее здесь: https://stackoverflow.com/questions/791 ... -in-polars
Реклама
Ответить Пред. темаСлед. тема

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

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

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

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

  • Похожие темы
    Ответы
    Просмотры
    Последнее сообщение
  • Повторная выборка по группе в Polars
    Anonymous » » в форуме Python
    0 Ответы
    9 Просмотры
    Последнее сообщение Anonymous
  • Повторная выборка Pandas ведет себя по-разному с SUM и MEAN
    Anonymous » » в форуме Python
    0 Ответы
    113 Просмотры
    Последнее сообщение Anonymous
  • Повторная выборка Pandas по идентификатору
    Anonymous » » в форуме Python
    0 Ответы
    11 Просмотры
    Последнее сообщение Anonymous
  • Повторная выборка данных кадра получить время начала
    Anonymous » » в форуме Python
    0 Ответы
    5 Просмотры
    Последнее сообщение Anonymous
  • Случайный.выборка(население, X) иногда не содержится в случайном.выборка(население, Y), когда Y>X
    Anonymous » » в форуме Python
    0 Ответы
    24 Просмотры
    Последнее сообщение Anonymous

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