我在weka中写了一小段代码,它们应用了一个过滤器然后应用了一个聚类算法,但是我得到了以下错误:
线程“main”中的异常weka.core.WekaException:weka.clusterers.Cobweb:没有属性!
代码:
这有什么问题?:
StringToWordVector stringToWordVector = new StringToWordVector();
// bigrams to 4-grams
NGramTokenizer nGramTokenizer = new NGramTokenizer();
nGramTokenizer.setNGramMinSize(2);
nGramTokenizer.setNGramMinSize(4);
stringToWordVector.setTokenizer(nGramTokenizer);
// TF-IDF
stringToWordVector.setTFTransform(true);
stringToWordVector.setIDFTransform(true);
stringToWordVector.setUseStoplist(true);
stringToWordVector.setLowerCaseTokens(true);
ArffLoader loader = new ArffLoader();
loader.setFile(new File("./learningRelation.arff"));
Instances structure = loader.getStructure();
stringToWordVector.setInputFormat(structure);
structure = Filter.useFilter(structure, stringToWordVector);
structure.setClassIndex(TestInstances.NO_CLASS);
Cobweb cw = new Cobweb();
cw.buildClusterer(structure);
Instance current;
while ((current = loader.getNextInstance(structure)) != null)
cw.updateClusterer(current);
cw.updateFinished();
// output generated model
System.out.println(cw);
文件learingRelation.arff是这样的:
@relation推文
@attribute tweet string
@data
'社交商务 - 演示文稿| scoopit via ronsela http://t.co/LrGHQKrmOQ社交电子商务营销'
'社交商务 - 演示文稿| scoopit via ronsela http://t.co/LrGHQKrmOQ社交电子商务营销'
答案 0 :(得分:0)
我已经解决了,错误是文件的错误路径:
loader.setFile(new File("./learningRelation.arff"));