Как правильно объединить DataFrame?

Есть три DataFrame:

  1. Список всех пользователей
  2. Список всех товаров
  3. Запись того, что человек покупал этот товар

В первом есть идентификатор пользователя Во втором есть идентификатор товара В третьем есть идентифкатор пользователя и идентификатор товара

Мне нужно переписать их в один дф такого вида

pd.DataFrame(columns=['userID', 'itemID', ‘purchased‘])

Где purchased - флаг, что пользователь купил товар или нет, то бишь 1 и 0. Там должны быть все товары и все пользователи

Как можно правильно объединить DataFrame?


Ответы (1 шт):

Автор решения: MaxU

Воспользуйтесь методом DataFrame.merge():

res = df1.merge(df2, how="cross").merge(df3, how="all", indicator=True)

PS код в ответе не тестировался по причине отсутствия воспроизводимого примера данных в вопросе.

→ Ссылка