diff --git a/.gitignore b/.gitignore new file mode 100644 index 0000000..20fd6f3 --- /dev/null +++ b/.gitignore @@ -0,0 +1,2 @@ +# Test +test/ \ No newline at end of file diff --git a/dataset/file.csv b/dataset/file.csv new file mode 100644 index 0000000..ff56585 --- /dev/null +++ b/dataset/file.csv @@ -0,0 +1,3 @@ +24,43,"Apple" +24,22,"Mango" +21,54,"Apple" diff --git a/example.php b/example.php index 2094e8c..2a5ff63 100644 --- a/example.php +++ b/example.php @@ -16,6 +16,4 @@ echo "\n"; print_r($data->getPrediction()); echo "\n"; -print_r($data->getSquare()); - - +print_r($data->getSquare()); \ No newline at end of file diff --git a/src/Knn.php b/src/Knn.php index 157bfb2..593e885 100644 --- a/src/Knn.php +++ b/src/Knn.php @@ -1,13 +1,13 @@ $filePath = $filePath; + + $file = fopen('../dataset/' . $filePath, 'r'); + while (($line = fgetcsv($file)) !== false) { + + $resultCsv[] = $line; + } + fclose($file); + + for ($i = 0; $i < count($resultCsv); $i++) { + + $label[] = end($resultCsv[$i]); + unset($resultCsv[$i][count($resultCsv[$i]) - 1]); + } + + $this->sample = $resultCsv; + $this->label = $label; + + $result = new Knn($this->sample, $predictData, $this->label, $k); + $this->result = $result->result; + } +} \ No newline at end of file diff --git a/tests/csv.php b/tests/csv.php new file mode 100644 index 0000000..f8863d4 --- /dev/null +++ b/tests/csv.php @@ -0,0 +1,19 @@ +sample); +// print_r($test); + +$data = new KnnCsv('file.csv', $predict, 3); +echo $data->result; diff --git a/tests/file.csv b/tests/file.csv new file mode 100644 index 0000000..621e1d5 --- /dev/null +++ b/tests/file.csv @@ -0,0 +1,2 @@ +24,43,53,52,52,42,"Apple" +24,22,24,64,13,42,"Mango"