• weka数据挖掘拾遗(三)----再谈如果何生成arff


    前一阵子写过一个arff的随笔,但是写完后发现有些啰嗦。其实如果使用weka自带的api,生成arff文件将变成一件很简单的事儿。

    首先,可以先把特征文件生成csv格式的。csv格式就是每列数据都用逗号分隔的一种格式。(还有不清楚的googling一下就知道了)

    一、首先看下特征文件怎么保存成csv格式。

    1、首行为特征名,以逗号分隔。

    2、除首行外的行都为数据行,每列数据都是首行对应的值。(可以是字符串,数字)

    例:

    二、通过weka的api把上面的csv转化成arff格式文件

      1、weka代码

     1     public static void genArffFile(String input , String output){
     2         try{
     3             File file = new File(input);
     4             CSVLoader csvLoader = new CSVLoader();
     5             csvLoader.setSource(file);
     6             Instances data = csvLoader.getDataSet();
     7             savaInstances(data, output);
     8         }catch(Exception e){
     9             e.printStackTrace();
    10         }
    11     }
    View Code
     1     /**
     2      * @function 保存Arff文件
     3      * @param data arff格式的数据
     4      * @param outputPath 数据保存路径
     5      * @return
     6      */
     7     public static boolean savaInstances(Instances data , String outputPath)
     8     {
     9         try{
    10             BufferedWriter bw = new BufferedWriter(new OutputStreamWriter(
    11                     new FileOutputStream(outputPath), Charset.forName("utf-8")));
    12 
    13             bw.write(data.toString());
    14             bw.close();
    15         }catch(Exception e){
    16             e.printStackTrace();
    17             return false;
    18         }
    19         return true;
    20     }
    View Code

    三、总结

      从上面的代码能看出,如果已经生成了csv格式的特征文件,那么生成arff文件也就是几行代码的事情。其实,如果生成了csv格式的特征文件,那么weka是直接可以读取的,之后使用 Instances data = csvLoader.getDataSet(); 这行代码其实就是把数据存到了Instances中,而Instances其实就是保存的arff格式的文件。如果没有其它必要,使用weka时,使用以csv格式的特征文件也是可以的,不必要非得转化成arff格式。

  • 相关阅读:
    什么是ORM
    ORM优缺点
    Azure 中快速搭建 FTPS 服务
    连接到 Azure 上的 SQL Server 虚拟机(经典部署)
    在 Azure 虚拟机中配置 Always On 可用性组(经典)
    SQL Server 2014 虚拟机的自动备份 (Resource Manager)
    Azure 虚拟机上的 SQL Server 常见问题
    排查在 Azure 中新建 Windows 虚拟机时遇到的经典部署问题
    上传通用化 VHD 并使用它在 Azure 中创建新 VM
    排查在 Azure 中新建 Windows VM 时遇到的部署问题
  • 原文地址:https://www.cnblogs.com/nocml/p/4524918.html
Copyright © 2020-2023  润新知