Phpml\Math\Distance\Euclidean::distance PHP Метод

distance() публичный Метод

public distance ( array $a, array $b ) : float
$a array
$b array
Результат float
    public function distance(array $a, array $b) : float
    {
        if (count($a) !== count($b)) {
            throw InvalidArgumentException::arraySizeNotMatch();
        }
        $distance = 0;
        $count = count($a);
        for ($i = 0; $i < $count; ++$i) {
            $distance += pow($a[$i] - $b[$i], 2);
        }
        return sqrt((double) $distance);
    }

Usage Example

Пример #1
0
 public function testCalculateDistanceForThreeDimensions()
 {
     $a = [6, 10, 3];
     $b = [2, 5, 5];
     $expectedDistance = 6.708203932499369;
     $actualDistance = $this->distanceMetric->distance($a, $b);
     $this->assertEquals($expectedDistance, $actualDistance);
 }
Euclidean