ValueError: 'movieId' 既是索引级别又是列标签,这是不明确的。

8
#join movie details to movie ratings
movie_score = pd.merge(movie_score,movies_with_genres,on='movieId')
#join movie links to movie ratings
#movie_score = pd.merge(movie_score,links,on='movieId')
movie_score.head()

在代码的第2行存在这样的错误,我该如何修复?

输入图像说明

2个回答

6

我认为在两个数据框中,你的一些索引混乱了。为了解决这个问题,我建议按照以下方式重置每个数据框的索引:

movie_score.reset_index(drop = True, inplace = True)
movies_with_genres.reset_index(drop = True, inplace = True)

movie_score = pd.merge(movie_score,movies_with_genres,on='movieId')

1
如果一个列被设置为索引,而在另一张表中它没有被设置,则不允许合并。一个快速解决方法是使用df.set_index('movieId')将该列设置为数据框的索引。

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接