我想使用一组选定的属性创建一个新的arff数据集。我选择了20个随机索引。如何使用这些选定的属性创建一个新的arff文件?
int indices;
DataSource source = new DataSource("E:/dataset/lukemia.arff");
Instances toreduce = source.getDataSet();
Random generator = new Random();
for(int i=0;i<20;i++)
{
indices = generator.nextInt(toreduce.numAttributes());
System.out.println(indices);
}
答案 0 :(得分:0)
使用Remove
过滤器
Instances data = ...;
int[] r = new int[indexes.size()];
// r contains indexes you want to remove
Remove rmv = new Remove();
rmv.setAttributeIndicesArray(r);
rmv.setInputFormat(data);
Instances newDataset = Filter.useFilter(data, rmv);
对于您的情况,您可能需要将invertSelection
设置为true
(当然,在使用过滤器之前):
rmv.setInvertSelection(true);