在Java中使用weka:将实例转化为ARFF文件

转换器

使用ArffSaver类(weka.core.converters.ArffSaver)来保存一个weka.core.Instances对象到ARFF文件中。

Instances dataSet = ...
 ArffSaver saver = new ArffSaver();
 saver.setInstances(dataSet);
 saver.setFile(new File("./data/test.arff"));
 saver.setDestination(new File("./data/test.arff"));   // **not** necessary in 3.5.4 and later
 saver.writeBatch();

备注:通过使用转换器这种方法可以很容易的将   ArffSaver和其他Saver比如CSVSaver进行转换,使用不同的格式来输出数据。


Java I/O

也可以直接使用JAVA I/O类来保存 weka.core.Instances对象

import java.io.BufferedWriter;
 import java.io.FileWriter;
 ...
 Instances dataSet = ...
 BufferedWriter writer = new BufferedWriter(new FileWriter("./data/test.arff"));
 writer.write(dataSet.toString());
 writer.flush();
 writer.close();


备注:通过  weka.core.Instances的 toString()方法不能很好的处理大型数据集,因为会将完整的字符串数据写入内存中。最好使用前面讲到的转换器,通过增量的方法来将数据写入磁盘。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值