2016-05-05 21:29:11 +00:00
|
|
|
<?php
|
|
|
|
|
2016-11-20 21:53:17 +00:00
|
|
|
declare(strict_types=1);
|
2016-05-05 21:29:11 +00:00
|
|
|
|
2018-01-06 12:09:33 +00:00
|
|
|
namespace Phpml\Tests\SupportVectorMachine;
|
2016-05-05 21:29:11 +00:00
|
|
|
|
|
|
|
use Phpml\SupportVectorMachine\DataTransformer;
|
2017-02-03 11:58:25 +00:00
|
|
|
use PHPUnit\Framework\TestCase;
|
2016-05-05 21:29:11 +00:00
|
|
|
|
2017-02-03 11:58:25 +00:00
|
|
|
class DataTransformerTest extends TestCase
|
2016-05-05 21:29:11 +00:00
|
|
|
{
|
2017-11-14 20:21:23 +00:00
|
|
|
public function testTransformDatasetToTrainingSet(): void
|
2016-05-05 21:29:11 +00:00
|
|
|
{
|
|
|
|
$samples = [[1, 1], [2, 1], [3, 2], [4, 5]];
|
|
|
|
$labels = ['a', 'a', 'b', 'b'];
|
|
|
|
|
|
|
|
$trainingSet =
|
2016-05-06 20:33:04 +00:00
|
|
|
'0 1:1 2:1 '.PHP_EOL.
|
|
|
|
'0 1:2 2:1 '.PHP_EOL.
|
|
|
|
'1 1:3 2:2 '.PHP_EOL.
|
|
|
|
'1 1:4 2:5 '.PHP_EOL
|
2016-05-05 21:29:11 +00:00
|
|
|
;
|
|
|
|
|
|
|
|
$this->assertEquals($trainingSet, DataTransformer::trainingSet($samples, $labels));
|
|
|
|
}
|
2016-05-06 20:38:50 +00:00
|
|
|
|
2017-11-14 20:21:23 +00:00
|
|
|
public function testTransformSamplesToTestSet(): void
|
2016-05-06 20:38:50 +00:00
|
|
|
{
|
|
|
|
$samples = [[1, 1], [2, 1], [3, 2], [4, 5]];
|
|
|
|
|
|
|
|
$testSet =
|
|
|
|
'0 1:1 2:1 '.PHP_EOL.
|
|
|
|
'0 1:2 2:1 '.PHP_EOL.
|
|
|
|
'0 1:3 2:2 '.PHP_EOL.
|
|
|
|
'0 1:4 2:5 '.PHP_EOL
|
|
|
|
;
|
|
|
|
|
|
|
|
$this->assertEquals($testSet, DataTransformer::testSet($samples));
|
|
|
|
}
|
2016-05-05 21:29:11 +00:00
|
|
|
}
|