0
我已经实现了一个ArrayList
,它的类型为Instance
,通过编写一些代码,我已经从文件中读取了正面实例和负面实例,并根据它们的类标签将它们添加到相关的ArrayList
。现在我想知道如何将此ArrayList的类型转换为Instances类型,然后能够使用Weka API
的某些方法和类来重新采样它并创建分类器?将实例类型ArrayList转换为实例对象
下面是我的代码。
public class MyDecision {
double m=0.1;
double d=0.1;
private ArrayList<Instance> positiveInstances;
private ArrayList<Instance> negativeInstances;
Filter filter;
private double[] classlabels;
public MyDecision() throws Exception{
positiveInstances = new ArrayList<Instance>();
negativeInstances = new ArrayList<Instance>();
br = new BufferedReader(new FileReader("D:\\workspace\\MyDecision\\littleMyChurn\\Churn.arff"));
ArffSaver saverTets = new ArffSaver();
ArffSaver saverTraining = new ArffSaver();
Instances trainData = new Instances(br);
// Make the last attribute be the class
trainData.setClassIndex(trainData.numAttributes() - 1);
br.close();
classlabels=trainData.attributeToDoubleArray(trainData.numAttributes()-1);
for(int i=0;i<=trainData.numInstances()-1;i++){
if(classlabels[i]==0){
positiveInstances.add(trainData.instance(i));
}
else if(classlabels[i]==1){
negativeInstances.add(trainData.instance(i));
}
}
Resample resample = new Resample();
}}
你有没有找到一个解决办法? –