0

我不确定我应该如何在 weka 中创建一个未标记的 arff 文本文档。我目前正在尝试从磁盘读取未标记的 txt 文档,以根据我构建的模型进行分类。但是,要将文本文档转换为 arff,我目前正在使用

java weka.core.converters.TextDirectoryLoader它有效地为文档分配了一个类标签。

因此,将改为标记 arff。我的文本文件将是任意长度。

我已经检查了 wikispaces 中的示例,但它似乎只是加载了一个未标记的 arff,而没有解释我该如何创建它。

例子

测试.txt

我有很长很长的绳子


我如何将其转换为 arff 格式以在此代码中使用unlabeled.arff

import java.io.BufferedReader;
 import java.io.BufferedWriter;
 import java.io.FileReader;
 import java.io.FileWriter;
 import weka.core.Instances;
 ...
 // load unlabeled data
 Instances unlabeled = new Instances(
                         new BufferedReader(
                           new FileReader("/some/where/unlabeled.arff")));

 // set class attribute
 unlabeled.setClassIndex(unlabeled.numAttributes() - 1);

 // create copy
 Instances labeled = new Instances(unlabeled);

 // label instances
 for (int i = 0; i < unlabeled.numInstances(); i++) {
   double clsLabel = tree.classifyInstance(unlabeled.instance(i));
   labeled.instance(i).setClassValue(clsLabel);
 }
 // save labeled data
 BufferedWriter writer = new BufferedWriter(
                           new FileWriter("/some/where/labeled.arff"));
 writer.write(labeled.toString());
 writer.newLine();
 writer.flush();
 writer.close();

此代码来自 weka wiki 空间示例

4

1 回答 1

0

我创建了一个目录名称为?并将测试文档放入文件夹并使用 TextDirectoryLoader 转换为 arff。它对我有用,但我怀疑这是最好的解决方案。

于 2014-05-27T05:53:26.410 回答