我有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
答案 0 :(得分:0)
merged = pd.merge(dfMap, dfBB, on=['Artist','Song'], how='outer')
您可以使用列表或值数组来合并两个数据帧。我建议您查看documentation
关于拼写错误,您需要自己做一些清洁工作。您可以查看difflib