0
我目前正在WEKA中编写一个新的过滤器。在读取数据集上应用此过滤器之前,应该设置一些选项。其中一个应该是属性类的名称。现在的答案是,哪个变量使我可以访问读取数据集之前我的处理方法,这是应用过滤器时调用?查找WEKA属性选项处理的类名称
由于WEKA资源管理器在打开文件后显示所有不同的类,所以似乎必须有一个带有所有信息的Instances变量。
我目前正在WEKA中编写一个新的过滤器。在读取数据集上应用此过滤器之前,应该设置一些选项。其中一个应该是属性类的名称。现在的答案是,哪个变量使我可以访问读取数据集之前我的处理方法,这是应用过滤器时调用?查找WEKA属性选项处理的类名称
由于WEKA资源管理器在打开文件后显示所有不同的类,所以似乎必须有一个带有所有信息的Instances变量。
首先,您必须加载(或创建)一组实例。如果你有一个“.arrf”文件保存您可以按如下加载实例:
// initialize source
DataSource source=null;
Instances originalTrain=null;
String rootPath="/some/location/filename.arff" //the location and name of your data
source = new DataSource(rootPath);
originalTrain = source.getDataSet(); //originalTrain is an Instance object with your data
现在,如果我知道你在找什么,这些信息都可以通过查看属性类访问。
Instances originalTrain=//load the training data
//find the name of the first attribute
String name=originalTrain.attribute(0).name();
System.out.println(name); //look at new name
您可以通过查看JavaDoc
事情了解更多关于属性类和这些不同的功能是,我不知道我得到的情况下,从对象来访问属性。我的代码第一次生成Instances对象是应用过滤器时。但在输入之前的某处似乎被保存在其他Instances对象中。这就是我正在寻找的。 我按照这个描述来写新的过滤器。它不包括特定的数据集加载。 http://weka.wikispaces.com/Writing+your+own+Filter+%28post+3.5.3%29 – Neelia
我更新了包括如何加载数据集......这是你的意思吗? – Walter
有没有办法让所有的属性名称不知道有多少? –