2014-03-29 5 views
0

내가 따랐다 예를 들어, 예를 들어 WEKA 웹 사이트에 코드를하지만, 내가이 파일을 시도arff 파일의 클래스 레이블을 찾을 수 없습니다

weka.core.WekaException: weka.classifiers.bayes.NaiveBayesMultinomialUpdateable: Not enough training instances with class labels (required: 1, provided: 0)! 

클래스 레이블을 찾습니다 weka 탐색기와 잘 작동합니다.

ArffLoader loader = new ArffLoader(); 
    loader.setFile(new File(""));//file is valid 
    Instances structure = loader.getStructure(); 
    structure.setClassIndex(structure.numAttributes() - 1); 

    // train NaiveBayes 
    NaiveBayesMultinomialUpdateable n = new NaiveBayesMultinomialUpdateable(); 
    FilteredClassifier f = new FilteredClassifier(); 
    StringToWordVector s = new StringToWordVector(); 

    f.setFilter(s); 
    f.setClassifier(n); 

    f.buildClassifier(structure); 
    Instance current; 
    while ((current = loader.getNextInstance(structure)) != null) 
     n.updateClassifier(current); 

    // output generated model 
    System.out.println(n); 

답변

0

문제 클래스 인덱스 위치 0

ArffLoader loader = new ArffLoader(); 
    loader.setFile(new File(""));//file is valid 
    Instances structure = loader.getStructure(); 
    structure.setClassIndex(0); 

    // train NaiveBayes 
    NaiveBayesMultinomialUpdateable n = new NaiveBayesMultinomialUpdateable(); 
    FilteredClassifier f = new FilteredClassifier(); 
    StringToWordVector s = new StringToWordVector(); 

    f.setFilter(s); 
    f.setClassifier(n); 

    f.buildClassifier(structure); 
    Instance current; 
    while ((current = loader.getNextInstance(structure)) != null) 
     n.updateClassifier(current); 

    // output generated model 
    System.out.println(n); 
에서 어디에 놓여
관련 문제