zoukankan      html  css  js  c++  java
  • 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格式。

  • 相关阅读:
    移动端链接、点击事件、输入框去除背景高亮
    Quartz.Net与MVC结合定时任务
    Win10上使用SVN遇到的一些问题
    Win7上的ASP.NET MVC3项目在Win10上运行的一个坑
    《SQL必知必会》学习笔记(二)
    《SQL必知必会》学习笔记(一)
    数据库知识总结(表结构操作)
    搭建三层架构(ASP.NET MVC+EF)
    python线程中的全局变量与局部变量
    ADO.NET Entity Framework学习笔录(一)
  • 原文地址:https://www.cnblogs.com/nocml/p/4524918.html
Copyright © 2011-2022 走看看