Java WEKA Instance.ClassAttribute()方法

Java WEKA Instance.ClassAttribute()方法,java,data-mining,weka,Java,Data Mining,Weka,我是WEKA,我遇到了以下代码: Instances train = DataSource.read(args[0]); train.setClassIndex(train.numAttributes() - 1); Instances test = DataSource.read(args[1]); test.setClassIndex(test.numAttributes() - 1); // train classifier J48 cls = new J48(); cls.buildCl

我是WEKA,我遇到了以下代码:

Instances train = DataSource.read(args[0]);
train.setClassIndex(train.numAttributes() - 1);
Instances test = DataSource.read(args[1]);
test.setClassIndex(test.numAttributes() - 1);
// train classifier
J48 cls = new J48();
cls.buildClassifier(train);
// output predictions
System.out.println("# - actual - predicted - distribution");
for (int i = 0; i < test.numInstances(); i++) {
    double pred = cls.classifyInstance(test.instance(i));
    double[] dist = cls.distributionForInstance(test.instance(i));
    System.out.print((i+1) + " - ");
    System.out.print(test.instance(i).toString(test.classIndex()) + " - ");
    System.out.print(test.classAttribute().value((int) pred) + " - ");
    System.out.println(Utils.arrayToString(dist));
}
如果“test”是一组实例,那么上面的语句如何在for循环中打印当前实例的预测类值

谢谢
Abhishek S

我认为
test.classAttribute()
提供了测试实例可以分配到的所有类。第二部分
.value((int)pred)
然后从该组中选择与
pred
匹配的类,该类是当前测试实例的预测类。

我认为
test.classAttribute()
提供了测试实例可以分配到的所有类。第二部分
.value((int)pred)
然后从该组中选择与
pred
匹配的类,该类是当前测试实例的预测类

System.out.print(test.classAttribute().value((int) pred) + " - ");