Полярные соединения соединяются с условием ИЛИPython

Программы на Python
Anonymous
Полярные соединения соединяются с условием ИЛИ

Сообщение Anonymous »

У меня есть два набора данных из двух совершенно разных источников данных.

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

import polars as pl

df1 = pl.read_csv(b"""date,label,org_slug,org_id,org_name,issues_count
2023-08-29,label1,org-slug-name-1,org-id-1,org-name,1""", try_parse_dates=True)
df2 = pl.read_csv(b"""date,org_name,org_id,org_slug,info_1,info_2
2023-08-29,org-name,org-id-1,org-slug-name-1,10,12""", try_parse_dates=True)
Кадр данных 1

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

┌────────────┬─────────────────┬─────────────────┬─────────────────┬────────────────┬──────────────┐
│ date       ┆ label           ┆ org_slug        ┆ org_id          ┆ org_name       ┆ issues_count │
│ ---        ┆ ---             ┆ ---             ┆ ---             ┆ ---            ┆ ---          │
│ date       ┆ str             ┆ str             ┆ str             ┆ str            ┆ i64          │
╞════════════╪═════════════════╪═════════════════╪═════════════════╪════════════════╪══════════════╡
│ 2023-08-29 ┆ label1          ┆ org-slug-name-1 ┆ org-id-1        ┆ org-name       ┆ 1            │          │
└────────────┴─────────────────┴─────────────────┴─────────────────┴────────────────┴──────────────┘
Кадр данных 2

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

┌────────────┬─────────────┬───────────────────┬───────────────────┬───────────┬─────────┐
│ date       ┆ org_name    ┆ org_id            ┆ org_slug          ┆ info_1    ┆ info_2  │
│ ---        ┆ ---         ┆ ---               ┆ ---               ┆ ---       ┆ ---     │
│ date       ┆ str         ┆ str               ┆ str               ┆ i64       ┆ i64     │
╞════════════╪═════════════╪═══════════════════╪═══════════════════╪═══════════╪═════════╡
│ 2023-08-29 ┆ org-name    ┆ org-id-1          ┆ org-slug-name-1   ┆ 10        ┆ 12
└────────────┴─────────────┴───────────────────┴───────────────────┴───────────┴─────────┘
Я пытаюсь объединить эти два фрейма данных на основе даты.
Тогда я хотел бы присоединиться через org_id или org_slug или org_name.
Они обычно совпадают, но бывают случаи, когда org_slug или org_id могут быть нулевыми, и я хочу полагаться на следующий состоянии.
Можно ли этого добиться в полярах?

Подробнее здесь: https://stackoverflow.com/questions/770 ... -condition

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