使用以下命令时出现错误
trainset, testset = train_test_split(t2data, test_size=.15,train_size=0.85)
数据集包含用户评级、用户ID和产品ID。
错误消息:
AttributeError: 'DataFrame' object has no attribute 'raw_ratings'
我的 Dataframe 没有任何名为raw_ratings的属性。
下面是我阅读CSV的方式:
rdata = pd.read_csv('ratings_Electronics.csv', header=0, names ['userid','productid','rating','timestamp'],skipinitialspace=True)
所以我不能理解这个错误是怎么来的。任何帮助都将不胜感激。谢谢
详细错误:
()中的属性错误追溯(最近调用最后)----〉1个车列,测试集= train_test_split(t2data,test_size = .15,train_size = 0.85)
2 frames /usr/local/lib/python3.6/dist-packages/pandas/core/generic.py ingetattr(self, name) 5134 if self._info_axis._can_hold_identifiers_and_holds_name(name): 5135 return self[name] -> 5136 return object.getattribute(self, name) 5137 5138 defsetattr(self, name: str, value) -> None:
属性错误:"DataFrame"对象没有属性"raw_ratings"
2条答案
按热度按时间evrscar21#
您可能使用了错误的数据类型。很可能您使用的是panada数据框架,而预期的是惊喜数据集。
我发现这个来自NicholasHug的https://github.com/NicolasHug/Surprise/issues/20示例很有用。
解决方案对我有效。
jmo0nnb32#
您正在阅读
rdata
变量中的CSV并拆分t2data
。