java从属性计算实例数
我试图从.arff
文件中的特定属性计算实例数。尽管如此,我似乎只能从显示的数据中选择属性,而不能选择值
在本例中,我试图选择Wins在数据中出现的次数,但是,代码只选择属性中的值Wins
以下是我正在使用的:
//create the class to load the data
package weka;
import weka.core.Instances;
import weka.core.converters.ConverterUtils.DataSource;
public class DatasetLoading {
public static Instances loadData(String location) {
try {
return DataSource.read(location);
}
catch (Exception e) {
System.err.println("Failed to load data from: " + location);
e.printStackTrace();
return null;
}
}
public static void main(String[] args) {
String dataLocation = "C:/Users/Emil/Downloads/Week 1/Arsenal_TRAIN1.arff";
Instances train = loadData(dataLocation);
System.out.println(train);
}
}
//select for counts of values that appear in the data
public class test_learning {
public static void main(String[] args) throws Exception {
String arff = "C:/Users/Emil/Downloads/Week 1/Arsenal_TRAIN1.arff";
Instances data = DatasetLoading.loadData(arff);
System.out.print("Num of Wins = " + data.attribute(2).value(2));
Output: Num of Wins = Win
预期:
Output: Num of Wins = 12
数据文件示例:
@relation Arsenal-weka.filters.unsupervised.attribute.Remove-R3
@attribute Leno {0,1}
@attribute Tierney {0,1}
@attribute class {Loss,Draw,Win}
@data
1,0,Loss
1,0,Loss
0,1,Draw
1,0,Draw
0,0,Win
0,1,Win
1,1,Win
0,1,Win
1,1,Win
1,0,Win
1,1,Loss
0,1,Draw
1,1,Draw
1,1,Draw
0,0,Win
1,0,Win
0,1,Win
1,1,Win
1,1,Win
1,1,Win
# 1 楼答案
您可以使用
Instances.attributeStats(int)
方法(Javadoc)获取第三个属性(AttributeStats Javadoc)的统计信息,而不是检索第三个属性(Javadoc)的第三个标称值