流生成器ARFF

时间:2013-04-21 20:46:42

标签: generator weka resampling

我有来自网上调查的ARFF文件 我想生成(重新采样?)更多实例,因为我没有足够的人 我已尝试使用WEKA过滤器重采样(过滤器>监督>实例> resample - sameplsSizePercent到800.0),但由于许多实例完全匹配,因此我得到了100%的准确度。
我在python或其他方面寻找了如何做到这一点,但我更喜欢使用我当前的数据集来生成实例,以更加面向集群。

谢谢,
Chura

1 个答案:

答案 0 :(得分:0)

我强烈建议你用Java方式。有很多从数组创建.arff文件的例子。在那里,您可以以简单的方式手动更改属性及其值。这可能就是一个例子:

FastVector atts = new FastVector();
List<Instance> instances = new ArrayList<Instance>();
for(int dim = 0; dim < numDimensions; dim++)
{
// Create new attribute / dimension
Attribute current = new Attribute("Attribute" + dim, dim);
// Create an instance for each data object
if(dim == 0)
{
    for(int obj = 0; obj < numInstances; obj++)
    {
        instances.add(new SparseInstance(numDimensions));
    }
}

// Fill the value of dimension "dim" into each object
for(int obj = 0; obj < numInstances; obj++)
{
    instances.get(obj).setValue(current, data[dim][obj]);
}

// Add attribute to total attributes
atts.addElement(current);
}

// Create new dataset
Instances newDataset = new Instances("Dataset", atts, instances.size());

// Fill in data objects
for(Instance inst : instances)
newDataset.add(inst);