使用weka将CSV转换为ARFF

时间:2012-04-26 21:29:34

标签: weka

我一直在尝试将此数据集http://archive.ics.uci.edu/ml/datasets/Communities+and+Crime+Unnormalized放入Weka中,而且根本没有运气。我将其转换为CSV然后将其加载到Weka中,然后尝试将其转换为ARFF,但仍然给我错误"attribute names are not unique"

另外,我是否必须从测试数据集中传播训练数据集或将它们保持在一起?

9 个答案:

答案 0 :(得分:29)

您也可以使用ArffViewer(工具 - > ArffViewer或Ctrl + A)。然后打开您的CSV文件。

接下来转到文件 - >另存为...并选择 Arff数据文件(默认情况下应选择)。

请注意,您的字段必须用逗号分隔,而不能用分号分隔。

答案 1 :(得分:14)

WEKA中实施了一些转换器。以下是与此主题相关的API页面:http://weka.sourceforge.net/doc.stable/weka/core/converters/package-summary.html

例如,以下是如何从CSV转换为ARFF:

java -cp /path/to/weka.jar weka.core.converters.CSVLoader filename.csv > filename.arff

答案 2 :(得分:5)

将.CSV格式文件上传到this。从那里你的.CSV格式将转换为WEKA .arff格式。完成后,将.arff文件提取到Weka工具。现在您可以继续进行数据分析。

答案 3 :(得分:2)

您需要csv中的标题字段。您需要在第一行的csv文件中添加attr0,attr1,...标签。

答案 4 :(得分:1)

我没有遇到任何问题。好的,请执行以下操作。在您指定的网页中

  • 复制“.kaff标题为weka:”和“相关论文”之间的细分。
  • 将其粘贴到.txt文件
  • this location
  • 打开数据文件
  • 复制实例并在@data部分
  • 之后立即将其附加到.txt文件中
  • 将.txt文件另存为.arff文件

你现在好了。

我是否必须从测试数据集中创建训练数据集或将它们放在一起?

这取决于您的分类方法。如果选择10倍CV,则将它们放在一起。如果要使用约定方法,请将它们分开。同样,这一切都取决于您的方法。

答案 5 :(得分:0)

也许这种在线CSV到ARFF转换器有用吗?

http://slavnik.fe.uni-lj.si/markot/csv2arff/csv2arff.php

答案 6 :(得分:0)

将.csv转换为.arff文件格式以在Weka中使用。 注意: .csv文件应该是正确的,否则它不会转换为.arff文件。它不应在列中包含任何null值。 下载weka核心jar。 在Eclipse中 - >配置构建路径,添加weka核心jar并编写以下代码行并执行代码:

<强> CSVToArff.java

import weka.core.Instances;
import weka.core.converters.ArffSaver;
import weka.core.converters.CSVLoader;

import java.io.File;

public class CSVToArff {

   public static void main(String[] args) throws Exception {


    // load CSV
    CSVLoader loader = new CSVLoader();
    loader.setSource(new File("Provide the input file location (.csv) "));
    Instances data = loader.getDataSet();

    // save ARFF
    ArffSaver saver = new ArffSaver();
    saver.setInstances(data);
    saver.setFile(new File("Provide the output file location (.arff) ");
    saver.writeBatch();
    // .arff file will be created in the output location
  }
}

答案 7 :(得分:0)

在使用简单CLI的weka中,我们可以轻松地将.csv文件转换为.arff文件。

只需导航到简单 CLI -> 在提供的文本字段中输入以下命令(首先提供 .csv 文件名,然后提供要转换的 .arff 的名称)

java weka.core.converters.CSVLoader D:\L4S1\DataMining-Lab-Assignment-02\filename.csv > D:\L4S1\DataMining-Lab-Assignment-02\filename.arff

下图显示了简单的 CLI 窗口

enter image description here

答案 8 :(得分:-1)

它有效

例如: - C:\ Users \ User \ Desktop&gt; java -cp&#34; e:\ data \ weka-3-6-10 \ weka.jar;。&#34; weka.core.converters.CSVLoader data1.csv&gt;&gt; data1.arff 1.在转换之前检查excel中的csv,因为任何单元格都不应该是不正确的2.检查属性是否正确

对于普通csv - 你必须根据需要添加标题行,即x,y,z,...