diff --git a/TutoImportation.md b/TutoImportation.md new file mode 100644 index 0000000000000000000000000000000000000000..6578a0474d83b69e14350f395aa89e543ac853a4 --- /dev/null +++ b/TutoImportation.md @@ -0,0 +1,19 @@ +# Importation d'un fichier CSV + +Ce modèle de classification offre la possibilité d'importer une base de données, pour cela il vous suffit d'ajouter au modèle +dans le dossier `src/main/java/fr.univlille.sae.classification/model` une nouvelle classe avec le nom que vous souhaitez donner à votre jeu de données. + +Une fois cela fait, il vous suffit d'implémenter les différentes méthodes présentes dans l'interface `LoadableData`. Vous devez ensuite ajouter ce nouveau type +à l'énumération `DataType` où vous devez spécifier le nombre d'arguments devant être exploiter, cela correpond au nombre de colones du tableau - 1. + +Rendez-vous ensuite dans la classe `PointFactory` où devez y ajouter dans le switch case de la méthode `createPoint()`: + +```java +case [Nom des données]: + if (size != DataType.[Nom des données].getArgumentSize()) { + throw new IllegalArgumentException("Le nombre de coordonnées doit être de " + [Nom des données].getArgumentSize() + " pour le type [Nom des données]."); + } + data = new [Nom des données].getArgumentSize()(coords); + break; +``` + diff --git a/src/main/java/fr/univlille/sae/classification/model/Iris.java b/src/main/java/fr/univlille/sae/classification/model/Iris.java index abf271abb8ef1ba9bb655bab997a826b774bb18d..e716c1062f71cbcec4606f807ba67e670367ed22 100644 --- a/src/main/java/fr/univlille/sae/classification/model/Iris.java +++ b/src/main/java/fr/univlille/sae/classification/model/Iris.java @@ -109,27 +109,6 @@ public class Iris extends LoadableData { return petalLength; } - /** - * Renvoie la valeur des données en fonction de l'axe spécifié. - * @param axes nom de l'axe pour lequel la valeur est requise. - * @return valeur correspondante. - */ - @Override - public double getDataType(String axes) { - switch (axes) { - case "sepalWidth": - return sepalWidth; - case "sepalLength": - return sepalLength; - case "petalWidth": - return petalWidth; - case "petalLength": - return petalLength; - default: - return sepalLength; - } - } - @Override public double[] getAttributes() { return new double[]{sepalLength, sepalWidth, petalLength, petalWidth} ; diff --git a/src/main/java/fr/univlille/sae/classification/model/LoadableData.java b/src/main/java/fr/univlille/sae/classification/model/LoadableData.java index 4aa25be2e34b88f7db8b244d80410cc4299d6e3c..2f08a23358a1a43266f5364065cf800b1f048524 100644 --- a/src/main/java/fr/univlille/sae/classification/model/LoadableData.java +++ b/src/main/java/fr/univlille/sae/classification/model/LoadableData.java @@ -54,12 +54,6 @@ public abstract class LoadableData { */ public abstract Color getColor(); - /** - * Renvoie la valeur des données en fonction de l'axe spécifié. - * @param axes nom de l'axe pour lequel la valeur est requise. - * @return valeur correspondante. - */ - public abstract double getDataType(String axes); public abstract double[] getAttributes(); diff --git a/src/main/java/fr/univlille/sae/classification/model/Pokemon.java b/src/main/java/fr/univlille/sae/classification/model/Pokemon.java index f52f5b1a285687aab16c03cb5f9ff2c41298ef8d..fb4d7c44c419fcbaf6eb6e9dc9bb2710c614f8f7 100644 --- a/src/main/java/fr/univlille/sae/classification/model/Pokemon.java +++ b/src/main/java/fr/univlille/sae/classification/model/Pokemon.java @@ -161,43 +161,6 @@ public class Pokemon extends LoadableData { } } - /** - * Renvoie la valeur des données en fonction de l'axe spécifié. - * - * @param axes nom de l'axe pour lequel la valeur est requise. - * @return valeur correspondante. - */ - @Override - public double getDataType(String axes) { - switch (axes) { - case "attack": - return this.attack; - case "base_egg_steps": - return this.baseEggSteps; - case "capture_rate": - return this.captureRate; - case "defense": - return this.defense; - case "experience_growth": - return this.experienceGrowth; - case "hp": - return this.hp; - case "sp_attack": - return this.spAttack; - case "sp_defense": - return this.spDefense; - case "speed": - return this.speed; - case "is_legendary": - if(this.isLegendary){ - return 1; - } - return 0; - default: - return this.attack; - } - } - @Override public double[] getAttributes() { return new double[]{attack, baseEggSteps, captureRate, defense,