我正在制作一个稀疏的arff文件,但它不会加载到Weka中。我得到错误,我在@attribute类行中有错误的值数,它期望1并拒绝接收12.我做错了什么?我的文件看起来像这样:
%ARFF file for questions data
%
@relation brazilquestions
@attribute att0 numeric
@attribute att1 numeric
@attribute att2 numeric
@attribute att3 numeric
%there are 469 attributes which represent my bag of words
@attribute class {Odontologia_coletiva, Periodontia, Pediatria, Estomatologia,
Dentistica, Ortodontia, Endodontia, Cardiologia, Terapeutica,
Terapeutica_medicamentosa, Odontopediatria, Cirurgia}
@data
{126 1, 147 1, 199 1, 56 1, 367 1, 400 1 , Estomatologia}
{155 1, 76 1, 126 1, 78 1, 341 1, 148 1, Odontopediatria}
%and then 81 more instances of data
关于我的语法错误的任何想法?我完全按照Witten / Frank / Hall的数据挖掘一书中的例子。提前谢谢!
答案 0 :(得分:1)
数据部分的问题。 你必须把class属性的索引放在
例如:
{126 1,147 1,199 1,56 1,367 1,400 1,Estomatologia}
像以下
一样纠正它{126 1,147 1,199 1,56 1,367 1,400 1,470 Estomatologia}
答案 1 :(得分:0)
在您的文档中,您声明了5个属性,但在@data中您添加了7个属性,那么您应该在@data中完成其余的值。 You can see this in the manual
答案 2 :(得分:0)
还需要列出实例类值的属性名称。 (参见Sparse ARFF file description。)
您的档案:
@attribute myclass {Odontologia_coletiva, Periodontia, Pediatria, Estomatologia,
Dentistica, Ortodontia, Endodontia, Cardiologia, Terapeutica,
Terapeutica_medicamentosa, Odontopediatria, Cirurgia}
@data
{126 1, 147 1, 199 1, 56 1, 367 1, 400 1 , Estomatologia}
应该是:
@data
{126 1, 147 1, 199 1, 56 1, 367 1, 400 1 , myclass Estomatologia}
答案 3 :(得分:0)
@ATTRIBUTE class string
尝试使用此代替
@attribute class {Odontologia_coletiva, Periodontia, Pediatria, Estomatologia, Dentistica, Ortodontia, Endodontia, Cardiologia, Terapeutica, Terapeutica_medicamentosa, Odontopediatria, Cirurgia}