Нахождение общих рядов (пересечение) в двух фреймах данных Pandas
Предположим, у меня есть два кадра данных этого формата (назовите ихdf1
а такжеdf2
):Я'
+------------------------+------------------------+--------+
| user_id | business_id | rating |
+------------------------+------------------------+--------+
| rLtl8ZkDX5vH5nAx9C3q5Q | eIxSLxzIlfExI6vgAbn2JA | 4 |
| C6IOtaaYdLIT5fWd7ZYIuA | eIxSLxzIlfExI6vgAbn2JA | 5 |
| mlBC3pN9GXlUUfQi1qBBZA | KoIRdcIfh3XWxiCeV1BDmA | 3 |
+------------------------+------------------------+--------+
м, чтобы получить данные кадра всех строк, которые имеют общийuser_id
вdf1
а такжеdf2
, (т.е. еслиuser_id
в обоихdf1
а такжеdf2
, включите две строки в выходной кадр данных)
Я могу придумать много способов приблизиться к этому, но все они кажутся мне неуклюжими. Например, мы могли бы найти все уникальныеuser_id
s в каждом кадре данных, создайте набор каждого, найдите их пересечение, отфильтруйте два кадра данных с результирующим набором и объедините два отфильтрованных кадра данных.
Может быть, этоЭто лучший подход, но я знаю, что Панда умный. Есть ли более простой способ сделать это? Я'мы смотрели наmerge
но я нене думаю, чтоэто то, что мне нужно