Функциональность объединения Pandas в PolarsPython

Программы на Python
Ответить
Anonymous
 Функциональность объединения Pandas в Polars

Сообщение Anonymous »

Я хочу объединить два кадра данных Polars (возможно, в нескольких столбцах), чтобы столбцы, используемые для объединения, не дублировались.
Текущее поведение:

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

import polars as pl

a = pl.DataFrame({'a': [1, 2, 3], 'b': [1, 2, 3]})
b = pl.DataFrame({'a': [3, 4, 5], 'b': [3, 4, 5]})

a.join(b, how='full', on='a')

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

shape: (5, 4)
┌──────┬──────┬─────────┬─────────┐
│ a    ┆ b    ┆ a_right ┆ b_right │
│ ---  ┆ ---  ┆ ---     ┆ ---     │
│ i64  ┆ i64  ┆ i64     ┆ i64     │
╞══════╪══════╪═════════╪═════════╡
│ 3    ┆ 3    ┆ 3       ┆ 3       │
│ null ┆ null ┆ 4       ┆ 4       │
│ null ┆ null ┆ 5       ┆ 5       │
│ 2    ┆ 2    ┆ null    ┆ null    │
│ 1    ┆ 1    ┆ null    ┆ null    │
└──────┴──────┴─────────┴─────────┘
Чего я хочу:

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

shape: (5, 3)
┌─────┬──────┬──────┐
│ a   ┆ b_x  ┆ b_y  │
│ --- ┆ ---  ┆ ---  │
│ i64 ┆ i64  ┆ i64  │
╞═════╪══════╪══════╡
│ 1   ┆ 1    ┆ null │
│ 2   ┆ 2    ┆ null │
│ 3   ┆ 3    ┆ 3    │
│ 4   ┆ null ┆ 4    │
│ 5   ┆ null ┆ 5    │
└─────┴──────┴──────┘
Мне нужно такое поведение, поскольку у меня есть большие фреймы данных, которые я хочу объединить в несколько столбцов. Один из способов, который может сработать, — просто каким-то образом объединить полученные ключевые столбцы, а затем удалить повторяющиеся столбцы, но это кажется громоздким.

Подробнее здесь: https://stackoverflow.com/questions/781 ... -in-polars
Ответить

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

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

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

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

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