熊猫:将一个数据框的特定列连接到另一列

时间:2018-08-28 17:57:52

标签: python pandas dataframe merge pandas-join

我在熊猫中有2个以下数据帧:

电影

+---+------------------------------+--------------+-----------+
|   | movie title                  | genre        | tconst    |
+---+------------------------------+--------------+-----------+
| 0 | Edison Kinetoscopic Record   | Documentary  | tt0000008 |
+---+------------------------------+--------------+-----------+
| 1 | La sortie des usines Lumière | Documentary  | tt0000010 |
+---+------------------------------+--------------+-----------+
| 2 | The Arrival of a Train       | Documentary  | tt0000012 |
+---+------------------------------+--------------+-----------+
| 3 | The Oxford and Cambridge     | NaN          | tt0000025 |
+---+------------------------------+--------------+-----------+
| 4 | Le manoir du diable          | Short|Horror | tt0000091 |
+---+------------------------------+--------------+-----------+

船员

+---+-----------+-----------+---------+------+
|   | tconst    | directors | writers | year |
+---+-----------+-----------+---------+------+
| 0 | tt0000001 | nm0005690 | \N      | 2001 |
+---+-----------+-----------+---------+------+
| 1 | tt0000002 | nm0721526 | \N      | 2002 |
+---+-----------+-----------+---------+------+
| 2 | tt0000003 | nm0721526 | \N      | 2003 |
+---+-----------+-----------+---------+------+
| 3 | tt0000004 | nm0721526 | \N      | 2004 |
+---+-----------+-----------+---------+------+
| 4 | tt0000005 | nm0005690 | \N      | 2005 |
+---+-----------+-----------+---------+------+

如何创建一个新的数据框,将 directors year 列仅加入电影数据框(使用tconst列)?

1 个答案:

答案 0 :(得分:6)

尝试:

pd.merge(movies, crew[["tconst", "directors", "year"]], on="tconst", how="left")

on参数告诉您要在键tconst上进行合并的功能,how参数告诉函数要如何处理非交点的行(在两个DataFrame之间共享。