【发布时间】:2017-09-03 23:41:52
【问题描述】:
如何从具有共同列值的两个数据框中获取合并的数据框,以便只有这些行使合并的数据框在特定列中具有共同值。
我有 5000 行 df1 格式:-
director_name actor_1_name actor_2_name actor_3_name movie_title
0 James Cameron CCH Pounder Joel David Moore Wes Studi Avatar
1 Gore Verbinski Johnny Depp Orlando Bloom Jack Davenport Pirates
of the Caribbean: At World's End
2 Sam Mendes Christoph Waltz Rory Kinnear Stephanie Sigman Spectre
10000 行 df2 为
movieId genres movie_title
1 Adventure|Animation|Children|Comedy|Fantasy Toy Story
2 Adventure|Children|Fantasy Jumanji
3 Comedy|Romance Grumpier Old Men
4 Comedy|Drama|Romance Waiting to Exhale
一个共同的列“movie_title”有共同的值,并基于它们,我想得到“movie_title”相同的所有行。其他要删除的行。
任何帮助/建议将不胜感激。
注意:我已经试过了
pd.merge(dfinal, df1, on='movie_title')
输出就像一行
director_name actor_1_name actor_2_name actor_3_name movie_title movieId title genres
关于 ="outer"/"left", "right" 的方式,我尝试了所有方法,但在删除 NaN 后没有得到任何行,尽管确实存在许多常见的列。
【问题讨论】: