From 19bf68c2aa1bed5f3333b0b5105e2ad21b087760 Mon Sep 17 00:00:00 2001 From: Lycano Date: Wed, 1 Apr 2026 15:05:16 +0200 Subject: [PATCH] JavaDoc et Completion Bullshit. --- Projet.iml | 1 + data/test.csv | 7 ++- src/ecoparasite/completion/Completion.java | 36 ++--------- src/ecoparasite/nettoyage/Nettoyage.java | 63 +++++++++++++++++++ .../completion/CompletionTest.java | 28 +++++++++ 5 files changed, 102 insertions(+), 33 deletions(-) create mode 100644 src/ecoparasite/nettoyage/Nettoyage.java create mode 100644 tests/ecoparasite/completion/CompletionTest.java diff --git a/Projet.iml b/Projet.iml index 771c910..4b1cf27 100644 --- a/Projet.iml +++ b/Projet.iml @@ -4,6 +4,7 @@ + diff --git a/data/test.csv b/data/test.csv index bec3bfd..7d35a9a 100644 --- a/data/test.csv +++ b/data/test.csv @@ -1,4 +1,9 @@ Sample_code;Station;Latitude;Longitude;Depth;d13C_raw;d13C_corr;d15N;C_N;StandardLength;TrophicLevel;Anisakis_abdominalcavity;Anisakis_Liver;Anisakis_gonads;Anisakis_stomach;NParasitesViscera;Anisakis_Muscle_Right;Anisakis_Muscle_Left;Aniskis_Muscle_total;NParasitesTotal TRACTRA_S0575_A0439;S0575;48.8692264;-4.3976635;96.84;-20.09735065;-19.14374028;12.52361179;4.316778148;257;3.117572211;7;1;0;1;9;1;3;4;13 TRACTRA_S0575_A0440;S0575;48.8692264;-4.3976635;96.84;-20.02738845;-19.42703789;12.25444555;3.959950061;252;3.038405671;263;5;0;21;289;12;11;23;312 -TRACTRA_S0575_A0441;S0575;48.8692264;-4.3976635;96.84;-19.82735569;-18.83090708;12.97020596;4.360049101;254;3.248923438;51;1;12;1;65;2;3;5;70 \ No newline at end of file +TRACTRA_S0575_A0441;S0575;48.8692264;-4.3976635;96.84;-19.82735569;-18.83090708;12.97020596;4.360049101;254;3.248923438;51;1;12;1;65;2;3;5;70 +TRACTRA_S0575_A0442;S0575;48.8692264;-4.3976635;96.84;-19.37802102;-18.26777864;13.43393806;4.4749923;242;3.385315231;158;6;0;1;165;9;19;28;193 +TRACTRA_S0575_A0443;S0575;48.8692264;-4.3976635;96.84;-18.20541518;-18.20541518;12.68793425;3.369189318;254;3.165902347;67;1;10;1;79;1;6;7;86 +TRACTRA_S0575_A0444;S0575;48.8692264;-4.3976635;96.84;-20.21559661;-18.91007641;12.62442312;4.672242625;251;3.147222601;140;1;0;0;141;3;6;9;150 +TRACTRA_S0575_A0888;S0575;48.8692264;-4.3976635;96.84;-20.21559661;-18.91007641;12.62442312;4.672242625;259;3.147222601;;;;;;;;; +TRACTRA_S0575_A0445;S0575;48.8692264;-4.3976635;96.84;-19.43517323;-19.13886211;11.25439721;3.65283952;258;2.744273805;281;5;0;3;289;1;8;9;298 \ No newline at end of file diff --git a/src/ecoparasite/completion/Completion.java b/src/ecoparasite/completion/Completion.java index 24eaf6b..b611342 100644 --- a/src/ecoparasite/completion/Completion.java +++ b/src/ecoparasite/completion/Completion.java @@ -6,22 +6,13 @@ import java.util.HashSet; public class Completion { - /** - * - * @param tablePoisson - * @return - */ - public HashSet completePoisson(HashSet tablePoisson){ + public static HashSet completePoisson(HashSet tablePoisson){ - double mean = mean(tablePoisson); //Moyenne - double ecart = ecartType(tablePoisson); // Ecart Type - - double z = 0; + double mean = mean(tablePoisson); for (Poisson p : tablePoisson) { - z = ( p.getInfestation() - mean ) / ecart; - if ( z >= 3 ) { + if ( p.getInfestation().isNaN() ) { p.setInfestation(mean); } } @@ -29,7 +20,7 @@ public class Completion { return tablePoisson; } - private double mean(HashSet tablePoisson){ + private static double mean(HashSet tablePoisson){ double mean = 0.0; @@ -40,24 +31,5 @@ public class Completion { return mean / tablePoisson.size(); } - private double variance(HashSet tablePoisson){ - - double vari = 0.0; - double mean = mean(tablePoisson); - - for (Poisson p : tablePoisson) { - vari += Math.pow( (p.getInfestation() - mean), 2); - } - - return vari / tablePoisson.size(); - } - - private double ecartType(HashSet tablePoisson){ - - double vari = variance(tablePoisson); - - return Math.sqrt(vari); - } - } diff --git a/src/ecoparasite/nettoyage/Nettoyage.java b/src/ecoparasite/nettoyage/Nettoyage.java new file mode 100644 index 0000000..9bf2da4 --- /dev/null +++ b/src/ecoparasite/nettoyage/Nettoyage.java @@ -0,0 +1,63 @@ +package ecoparasite.nettoyage; + +import ecoparasite.poisson.Poisson; + +import java.util.HashSet; + +public class Nettoyage { + + /** + * + * @param tablePoisson + * @return + */ + public static HashSet nettoiePoisson(HashSet tablePoisson){ + + double mean = mean(tablePoisson); //Moyenne + double ecart = ecartType(tablePoisson); // Ecart Type + + double z = 0; + + for (Poisson p : tablePoisson) { + z = ( p.getInfestation() - mean ) / ecart; + + if ( z >= 3 ) { + p.setInfestation(mean); + } + } + + return tablePoisson; + } + + private static double mean(HashSet tablePoisson){ + + double mean = 0.0; + + for (Poisson p : tablePoisson){ + mean += p.getInfestation(); + } + + return mean / tablePoisson.size(); + } + + private static double variance(HashSet tablePoisson){ + + double vari = 0.0; + double mean = mean(tablePoisson); + + for (Poisson p : tablePoisson) { + vari += Math.pow( (p.getInfestation() - mean), 2); + } + + return vari / tablePoisson.size(); + } + + private static double ecartType(HashSet tablePoisson){ + + double vari = variance(tablePoisson); + + return Math.sqrt(vari); + } + + +} diff --git a/tests/ecoparasite/completion/CompletionTest.java b/tests/ecoparasite/completion/CompletionTest.java new file mode 100644 index 0000000..ecc5a7c --- /dev/null +++ b/tests/ecoparasite/completion/CompletionTest.java @@ -0,0 +1,28 @@ +package ecoparasite.completion; + +import ecoparasite.input.InputFactory; +import ecoparasite.input.InputFileException; +import ecoparasite.input.RawData; +import ecoparasite.input.RawDataOverflow; +import ecoparasite.poisson.Mackerel; +import ecoparasite.poisson.Poisson; +import org.junit.jupiter.api.Test; + +import java.util.HashSet; + +import static org.junit.jupiter.api.Assertions.*; + +class CompletionTest { + + @org.junit.jupiter.api.Test + void completePoisson() throws InputFileException, RawDataOverflow { + + RawData test = InputFactory.readData("test.csv"); + + HashSet testp = Mackerel.parse(test); + + testp = Completion.completePoisson(testp); + + System.out.println(testp); + } +} \ No newline at end of file