Weka java扩展子样本过滤器

Posted

技术标签:

【中文标题】Weka java扩展子样本过滤器【英文标题】:Weka java spreadsubsample filter 【发布时间】:2015-10-16 03:57:10 【问题描述】:

我对 Weka 非常熟悉,因为我使用过 GUI。我正在做一些分类实验,需要对我的训练和测试数据使用 SpreadSubsample 过滤器。

我正在学习 java,并想使用 weka API 来做到这一点。我已经到了将训练和测试数据加载到 Weka 中的地步,如下所示:

 DataSource source = new DataSource("training.arff");
 Instances trainingData = source.getDataSet();
 if (trainingData.classIndex() == -1) 
 trainingData.setClassIndex(trainingData.numAttributes() - 1);

我得到一个输出。一切正常。

但是,我不知道如何实现过滤器。我已经生成了 training 和 testing.arff 文件,需要在将其加载到 weka 之前通过 spreadsubsample 过滤器对其进行过滤。

如果有人能提供详尽的解释和答案,我们将不胜感激。谢谢。

【问题讨论】:

【参考方案1】:

这里有一些示例代码:

SpreadSubsample ff = new SpreadSubsample();

String opt = " ";//any options you like, see documentation
String[] optArray = weka.core.Utils.splitOptions(opt);//right format for the options

ff.setOptions(optArray);
ff.setInputFormat(dataset);

Instances filteredInstances = Filter.useFilter(dataset, ff);

希望对您有所帮助。

【讨论】:

以上是关于Weka java扩展子样本过滤器的主要内容,如果未能解决你的问题,请参考以下文章

在java代码中使用weka过滤器(RemoveType)的选项p

Python从父调用扩展子方法

scss YAML响应(扩展子列)

我需要在 weka 中制作一个 SVM 来使用 Java 过滤文档

C++ 实现子类扩展子接口而不覆盖已经覆盖的方法

Weka 过滤器导致数据丢失