scikit-surprise:python 找不到模块,即使 pip 将其列为已安装

我正在尝试使用 scikit-surprise 模块来构建推荐系统,但是我在编译时遇到了错误。


我收到导入错误:无法导入名称“阅读器”错误


我的课如下


import pandas as pd

from surprise import Reader, Dataset


userReviewsFilePath ="UserReviewsFirst5000WithHeadings.csv"

ratings = pd.read_csv(userReviewsFilePath) # reading data in pandas df


ratings_dict = {'recipeID': list(ratings.recipeID),

                'rating': list(ratings.rating),

                'userID': list(ratings.userID)}

df = pd.DataFrame(ratings_dict)


reader = Reader(rating_scale=(1, 5))


data = Dataset.load_from_df(df[['recipeID', 'rating', 'userID']], reader)

pip show 表示安装了 1.0.6 版


鸿蒙传说
浏览 286回答 3
3回答

莫回无

我认为您的问题来自安装......我安装了“惊喜”并通过了您的代码并且它起作用了:import pandas as pdfrom surprise import Reader, Datasetprint(Reader) # or just print(surprise) if you import surprise出去:<class 'surprise.reader.Reader'>开始重新安装惊喜并告诉我们。如果您有多个版本的 python,请执行以下操作:which pip看看你是否在使用过的python版本上安装了surprise

波斯汪

我认为它在surprise.reader:https&nbsp;:&nbsp;//surprise.readthedocs.io/en/stable/reader.html你的代码应该是:from&nbsp;surprise.reader&nbsp;import&nbsp;Reader from&nbsp;surprise.dataset&nbsp;import&nbsp;Dataset编辑:我再次检查了似乎与此矛盾的说明,并将您的原始代码作为正确示例。https://surprise.readthedocs.io/en/stable/getting_started.html#getting-started那么也许他们添加了自己的快捷方式?无论哪种方式,这似乎都不是正确的解决方案,抱歉。(除非它有效,在这种情况下,他们的说明可能已过时。)编辑2:他们这样做的别名,所以“从惊喜进口读者”应该确实工作:https://github.com/NicolasHug/Surprise/blob/master/surprise/初始化的.py#L19

www说

我认为你需要做from surprise.reader import Reader
打开App,查看更多内容
随时随地看视频慕课网APP

相关分类

Python