AttributeError:“ DataFrame”对象没有属性“ raw_ratings”

问题描述

使用以下命令时出现错误

trainset,testset = train_test_split(t2data,test_size=.15,train_size=0.85)

数据集包含用户评分,用户ID和产品ID。

错误消息:

AttributeError: 'DataFrame' object has no attribute 'raw_ratings'

我的数据框没有名称为raw_ratings的属性

这就是我读取CSV的方式:

rdata = pd.read_csv('ratings_Electronics.csv',header=0,names ['userid','productid','rating','timestamp'],skipinitialspace=True)

所以我无法理解此错误的发生情况。任何帮助,将不胜感激。谢谢

详细错误


AttributeError跟踪(最近一次呼叫最近) 在()中 ----> 1个训练集,测试集= train_test_split(t2data,test_size = .15,train_size = 0.85)

2幅 / strong / getattr 中的/usr/local/lib/python3.6/dist-packages/pandas/core/generic.py(自身,名称) 5134如果self._info_axis._can_hold_identifiers_and_holds_name(名称): 5135返回自身[名称] -> 5136返回对象。 getattribute ((自身,名称) 5137 5138 def setattr (自身,名称:str,值)->无:

AttributeError:“ DataFrame”对象没有属性“ raw_ratings”

解决方法

您可能使用了错误的数据类型。很可能您使用的是 panada 数据框,而预期的数据集是意外的。

我发现这个例子很有帮助https://github.com/NicolasHug/Surprise/issues/20 来自 NicholasHug。
解决方案对我有用。

,

您正在读取rdata变量中的CSV并拆分t2data

相关问答

Selenium Web驱动程序和Java。元素在(x,y)点处不可单击。其...
Python-如何使用点“。” 访问字典成员?
Java 字符串是不可变的。到底是什么意思?
Java中的“ final”关键字如何工作?(我仍然可以修改对象。...
“loop:”在Java代码中。这是什么,为什么要编译?
java.lang.ClassNotFoundException:sun.jdbc.odbc.JdbcOdbc...