如何从具有公共列值的两个数据帧中获取合并的数据帧,以便只有这些行使合并的数据帧在特定列中具有公共值。
我有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
公共列“ film _ title”具有公共值,基于这些公共值,我希望获取所有与“ film _ title”相同的行。要删除的其他行。
如有任何帮助或建议,我将不胜感激。
注意: 我已经试过了
pd.merge(dfinal, df1, on='movie_title')
输出就像一行
director_name actor_1_name actor_2_name actor_3_name movie_title movieId title genres
在 how = “ foreign”/“ left”,“ right”上,我尝试了所有方法,但是在删除 NaN 之后没有得到任何行,尽管存在许多共同的列。