Phpml\Clustering\KMeans\Space::cluster PHP Method

cluster() public method

public cluster ( integer $clustersNumber, integer $initMethod = KMeans::INIT_RANDOM ) : array | Cluster[]
$clustersNumber integer
$initMethod integer
return array | Cluster[]
    public function cluster(int $clustersNumber, int $initMethod = KMeans::INIT_RANDOM)
    {
        $clusters = $this->initializeClusters($clustersNumber, $initMethod);
        do {
        } while (!$this->iterate($clusters));
        return $clusters;
    }

Usage Example

Example #1
0
 /**
  * @param array $samples
  *
  * @return array
  */
 public function cluster(array $samples)
 {
     $space = new Space(count($samples[0]));
     foreach ($samples as $sample) {
         $space->addPoint($sample);
     }
     $clusters = [];
     foreach ($space->cluster($this->clustersNumber, $this->initialization) as $cluster) {
         $clusters[] = $cluster->getPoints();
     }
     return $clusters;
 }