我正在尝试学习Weka:我正在使用Iris数据集 http://storm.cis.fordham.edu/~gweiss/data-mining/weka-data/iris.arff
有以下字段
@RELATION iris
@ATTRIBUTE sepallength REAL
@ATTRIBUTE sepalwidth REAL
@ATTRIBUTE petallength REAL
@ATTRIBUTE petalwidth REAL
@ATTRIBUTE class {Iris-setosa,Iris-versicolor,Iris-virginica}
从这个数据集我尝试从这个数据集中提取类标签,{I ris-setosa,Iris-versicolor,Iris-virginica}
我不明白如何获得班级标签?任何参考文献
public void getCdtion( String arff_path) throws Exception{
ArffLoader arffloder = new ArffLoader();
arffloder.setFile(new File(arff_path));
arffloder.getStructure();
Instances structure = arffloder.getDataSet();
System.out.println(arffloder.getStructure(););
}
答案 0 :(得分:1)
您正在调用arffloader.getDataSet()
,它返回数据集,而不是标题。您在问题中提供的ARFF只是一个没有数据的标题。要从标题中获取类标签,请执行以下操作。
public void getCdtion( String arff_path) throws Exception{
ArffLoader arffloder = new ArffLoader();
arffloder.setFile(new File(arff_path));
Instances structure = arffloder.getStructure();
Attribute classAtt = structure.classAttribute();
System.out.println(classAtt);
}
类属性classAtt
是Attribute,有关详细信息,请参阅链接。
希望它有所帮助!