clustersNumber = $clustersNumber; $this->initialization = $initialization; } public function cluster(array $samples): array { $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; } }