合并两列上的两个数据帧

时间:2018-05-27 21:46:59

标签: python pandas dataframe sentence-similarity

我有2个数据帧:

dfBB

Rank,Song,Artist,Year

dfMap

Artist,Song,SongId,ArtistId

我想在艺术家和歌曲的基础上将它们合并在一起,即:匹配的地方我添加额外的列,否则0:

Artist,Song,SongId,ArtistId,Rank,Year

我预见到艺术家或歌曲拼写错误的另一个问题。也许我可以查看相似度?不太清楚如何去做。

我尝试合并:

merged = pd.merge(dfMap, dfBB, on='Artist' and 'Song', how='outer')

但得到了:

Artist_x, Song, SongId, ArtistId, Rank, Artist_y, Rank 

1 个答案:

答案 0 :(得分:0)

merged = pd.merge(dfMap, dfBB, on=['Artist','Song'], how='outer')

您可以使用列表或值数组来合并两个数据帧。我建议您查看documentation

关于拼写错误,您需要自己做一些清洁工作。您可以查看difflib