See Release Notes
Long Term Support Release
1 <?php 2 3 declare(strict_types=1); 4 5 namespace Phpml\Preprocessing; 6 7 final class ColumnFilter implements Preprocessor 8 { 9 /** 10 * @var string[] 11 */ 12 private $datasetColumns = []; 13 14 /** 15 * @var string[] 16 */ 17 private $filterColumns = []; 18 19 public function __construct(array $datasetColumns, array $filterColumns) 20 { 21 $this->datasetColumns = array_map(static function (string $column): string { 22 return $column; 23 }, $datasetColumns); 24 $this->filterColumns = array_map(static function (string $column): string { 25 return $column; 26 }, $filterColumns); 27 } 28 29 public function fit(array $samples, ?array $targets = null): void 30 { 31 //nothing to do 32 } 33 34 public function transform(array &$samples, ?array &$targets = null): void 35 { 36 $keys = array_intersect($this->datasetColumns, $this->filterColumns); 37 38 foreach ($samples as &$sample) { 39 $sample = array_values(array_intersect_key($sample, $keys)); 40 } 41 } 42 }
title
Description
Body
title
Description
Body
title
Description
Body
title
Body