Задать вопрос
un1t
@un1t

Как сделать join с условиями в Pandas?

Как сделать такое в Pandas?
select * from t1 join t2 on t1.name=t2.name and (t1.color is null or t1.color == t2.color);
  • Вопрос задан
  • 1335 просмотров
Подписаться 1 Оценить Комментировать
Помогут разобраться в теме Все курсы
  • Нетология
    Python-разработчик: расширенный курс + нейросети
    12 месяцев
    Далее
  • Академия Эдюсон
    Python-разработчик
    9 месяцев
    Далее
  • ProductStar × РБК
    Профессия: Python-разработчик + ИИ
    8 месяцев
    Далее
Пригласить эксперта
Ответы на вопрос 1
@akonovalov
Программист на компьютере
Вам нужна операция LEFT JOIN, судя по всему.
Можно использовать merge, а можно через метод join.
Обратите внимание на параметр how - он как раз и настраивает режим джойна. По умолчанию это 'left'.

Я бы попробовал примерно так:
result = pd.merge(left=t1, right=t2, how='left', on='color')
Ответ написан
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы
ITK academy Краснодар
от 220 000 до 300 000 ₽
ITK academy Краснодар
от 75 000 ₽
DimaTech Ltd Краснодар
от 140 000 до 140 000 ₽