cocur / arff
v0.2.3
2018-09-07 18:37 UTC
Requires (Dev)
- mikey179/vfsstream: ~1.5
- mockery/mockery: ~0.9
- phpunit/phpunit: 6.*|~7.0
- plumphp/plum: ~0.5
README
为Weka读写
.arff
文件。
由欧洲维也纳的 Florian Eckerstorfer 开发。
安装
您可以使用 Composer 安装 cocur/arff
。
$ composer require cocur/arff
用法
编写 .arff
文件
use Cocur\Arff\Document; use Cocur\Arff\Column\NumericColumn; use Cocur\Arff\Column\NominalColumn; $document = new Document('iris'); $document->addColumn(new NumericColumn('sepallength')); $document->addColumn(new NumericColumn('sepalwidth')); $document->addColumn(new NumericColumn('petallength')); $document->addColumn(new NumericColumn('petalwidth')); $document->addColumn(new NominalColumn('class', ['Iris-setosa','Iris-versicolor','Iris-virginica'])); $document->addData(['sepallength' => 5.1, 'sepalwidth' => 3.5, 'petallength' => 1.4, 'petalwidth' => 0.2, 'class' => 'Iris-setosa']); $writer = new Writer(); $writer->render($document); // returns rendered .arff file $writer->write($document, 'iris.arff'); // writes .arff file to disk
读取 .arff
文件
use Cocur\Arff\Reader; $reader = new Reader(); $document = $reader->readFile('irif.arff'); // returns Cocur\Arff\Document
可用的列类型
Cocur\Arff\Column\NumericColumn
Cocur\Arff\Column\StringColumn
Cocur\Arff\Column\NominalColumn
Cocur\Arff\Column\DateColumn
日期列
您可以为日期列定义日期格式。该格式仅用于写入Arff文件,您需要在添加数据之前手动转换日期。
$column = new DateColumn('created', 'yyyy-MM-dd HH:mm:ss');
Plum 集成
cocur/arff 包含一个用于 Plum 的写入器。
use Cocur\Arff\Bridge\Plum\ArffWriter; $writer = new ArffWriter('filename.arff', 'name', [ new NumericColumn('sepallength'), new NumericColumn('sepalwidth'), new NumericColumn('petallength'), new NumericColumn('petalwidth'), new NominalColumn('class', ['Iris-setosa','Iris-versicolor','Iris-virginica']), ]);
更新日志
版本 0.2.3 (2018年9月7日)
- #3 支持更通用的关系名称并删除无效行 (由 frantzmiccoli 提供)
版本 0.2.2 (2018年3月16日)
- 列类型的不区分大小写的解析
版本 0.2.1 (2017年9月2日)
- 修复名义列的解析
版本 0.2 (2017年9月2日)
- 将
ArffFile
分割成Cocur\Arff\Document
和Cocur\Arff\Writer
- 添加
Cocur\Arff\Reader
以读取.arff
文件
版本 0.1 (2015年7月17日)
- 首次发布
许可
MIT 许可证适用于 cocur/arff。有关完整的版权和许可信息,请参阅与源代码一起分发的 LICENSE 文件。