我正在尝试在数据集上应用j48分类器,但我不了解如何实际选择正确的属性作为类。 我找到了一个名为class_is_last()的方法,它将最后一个属性设置为类,但如果我想选择名为'name'的属性作为类,该怎么办?
jvm.start()
loader = Loader(classname="weka.core.converters.ArffLoader")
dataweka = loader.load_file("enumeratedremovedtest-arff.arff")
dataarff = arff.load(open('enumeratedremovedtest-arff.arff', 'rb'))
from weka.classifiers import Classifier
dataweka.class_is_last()
cls = Classifier(classname="weka.classifiers.trees.J48", options=["-C","0.25", "-B", "-M", "2"])
print dataweka.class_attribute
cls.build_classifier(dataweka)
print(cls)
jvm.stop()
已导入所有必需的模块,这将按预期工作,并使用列表中的最后一个属性作为类。
答案 0 :(得分:0)
您的问题是如何在Weka中选择类索引。首先,让我们看看here中的类索引是什么。 我的建议是使用函数setClassIndex(int)
答案 1 :(得分:0)
让我们假设属性“名称”位于数据集的第5列中,您可以将类设置为:
label = 5
dataweka.class_index = label - 1