From 5d1fb3deae0db18151ebeb2b03df42227dffb0ef Mon Sep 17 00:00:00 2001 From: Le Roux Erwan <erwan.le-roux@irstea.fr> Date: Mon, 20 May 2019 13:55:09 +0200 Subject: [PATCH] [SCM][TREND TEST] refactor experiment folder --- .../studies_visualization/main_studies_visualizer.py | 10 +++------- .../studies_visualization/studies_visualizer.py | 4 ++-- .../study_visualization/main_study_visualizer.py | 6 ++---- .../study_visualization/study_visualizer.py | 12 +++--------- experiment/trend_analysis/__init__.py | 0 .../abstract_score.py | 0 .../abstract_trend_test.py | 12 ++++++++++-- .../mann_kendall_test.py | 0 .../non_stationary_trends.py | 0 test/test_experiment/test_coordinate_sensitivity.py | 5 ++--- 10 files changed, 22 insertions(+), 27 deletions(-) create mode 100644 experiment/trend_analysis/__init__.py rename experiment/{meteo_france_SCM_study => trend_analysis}/abstract_score.py (100%) rename experiment/{meteo_france_SCM_study => trend_analysis}/abstract_trend_test.py (91%) rename experiment/{meteo_france_SCM_study => trend_analysis}/mann_kendall_test.py (100%) rename experiment/{meteo_france_SCM_study/visualization/study_visualization => trend_analysis}/non_stationary_trends.py (100%) diff --git a/experiment/meteo_france_SCM_study/visualization/studies_visualization/main_studies_visualizer.py b/experiment/meteo_france_SCM_study/visualization/studies_visualization/main_studies_visualizer.py index 78fde13b..86e9ec11 100644 --- a/experiment/meteo_france_SCM_study/visualization/studies_visualization/main_studies_visualizer.py +++ b/experiment/meteo_france_SCM_study/visualization/studies_visualization/main_studies_visualizer.py @@ -1,10 +1,6 @@ -from experiment.meteo_france_SCM_study.abstract_score import MannKendall, WeigthedScore, MeanScore, MedianScore -from experiment.meteo_france_SCM_study.abstract_study import AbstractStudy -from experiment.meteo_france_SCM_study.abstract_trend_test import MannKendallTrendTest, ExampleRandomTrendTest -from experiment.meteo_france_SCM_study.crocus.crocus import CrocusDepth, CrocusSwe, ExtendedCrocusDepth, \ - ExtendedCrocusSwe -from experiment.meteo_france_SCM_study.safran.safran import SafranSnowfall, ExtendedSafranSnowfall, \ - ExtendedSafranTotalPrecip +from experiment.trend_analysis.abstract_score import MannKendall, WeigthedScore, MeanScore, MedianScore +from experiment.trend_analysis.abstract_trend_test import MannKendallTrendTest +from experiment.meteo_france_SCM_study.safran.safran import ExtendedSafranTotalPrecip from experiment.meteo_france_SCM_study.visualization.studies_visualization.studies import Studies from experiment.meteo_france_SCM_study.visualization.studies_visualization.studies_visualizer import StudiesVisualizer, \ AltitudeVisualizer diff --git a/experiment/meteo_france_SCM_study/visualization/studies_visualization/studies_visualizer.py b/experiment/meteo_france_SCM_study/visualization/studies_visualization/studies_visualizer.py index 3e1866e5..27a54572 100644 --- a/experiment/meteo_france_SCM_study/visualization/studies_visualization/studies_visualizer.py +++ b/experiment/meteo_france_SCM_study/visualization/studies_visualization/studies_visualizer.py @@ -2,7 +2,7 @@ from collections import OrderedDict, Counter import os import os.path as op from multiprocessing.dummy import Pool -from typing import Dict, List +from typing import Dict import numpy as np import pandas as pd @@ -10,7 +10,7 @@ import matplotlib.pyplot as plt from matplotlib.lines import Line2D from experiment.meteo_france_SCM_study.abstract_extended_study import AbstractExtendedStudy -from experiment.meteo_france_SCM_study.abstract_trend_test import AbstractTrendTest +from experiment.trend_analysis.abstract_trend_test import AbstractTrendTest from experiment.meteo_france_SCM_study.visualization.studies_visualization.studies import \ Studies from experiment.meteo_france_SCM_study.visualization.study_visualization.study_visualizer import StudyVisualizer diff --git a/experiment/meteo_france_SCM_study/visualization/study_visualization/main_study_visualizer.py b/experiment/meteo_france_SCM_study/visualization/study_visualization/main_study_visualizer.py index 72e1a2e6..6f587381 100644 --- a/experiment/meteo_france_SCM_study/visualization/study_visualization/main_study_visualizer.py +++ b/experiment/meteo_france_SCM_study/visualization/study_visualization/main_study_visualizer.py @@ -1,9 +1,7 @@ import time -from typing import Generator, List +from typing import List -import numpy as np - -from experiment.meteo_france_SCM_study.abstract_score import WeigthedScore, MannKendall +from experiment.trend_analysis.abstract_score import MannKendall from experiment.meteo_france_SCM_study.abstract_study import AbstractStudy from experiment.meteo_france_SCM_study.crocus.crocus import CrocusDepth, CrocusSwe, ExtendedCrocusDepth, \ ExtendedCrocusSwe, CrocusDaysWithSnowOnGround diff --git a/experiment/meteo_france_SCM_study/visualization/study_visualization/study_visualizer.py b/experiment/meteo_france_SCM_study/visualization/study_visualization/study_visualizer.py index a5f3da0a..402e28f0 100644 --- a/experiment/meteo_france_SCM_study/visualization/study_visualization/study_visualizer.py +++ b/experiment/meteo_france_SCM_study/visualization/study_visualization/study_visualizer.py @@ -1,8 +1,6 @@ import os import os.path as op from collections import OrderedDict -from copy import deepcopy -from typing import Union import math import matplotlib.pyplot as plt @@ -10,10 +8,10 @@ import numpy as np import pandas as pd import seaborn as sns -from experiment.meteo_france_SCM_study.abstract_score import MeanScore, WeigthedScore, AbstractTrendScore +from experiment.trend_analysis.abstract_score import MeanScore, AbstractTrendScore from experiment.meteo_france_SCM_study.abstract_study import AbstractStudy -from experiment.meteo_france_SCM_study.abstract_trend_test import AbstractTrendTest -from experiment.meteo_france_SCM_study.visualization.study_visualization.non_stationary_trends import \ +from experiment.trend_analysis.abstract_trend_test import AbstractTrendTest +from experiment.trend_analysis.non_stationary_trends import \ ConditionalIndedendenceLocationTrendTest, MaxStableLocationTrendTest, IndependenceLocationTrendTest from experiment.meteo_france_SCM_study.visualization.utils import create_adjusted_axes from experiment.utils import average_smoothing_with_sliding_window @@ -28,7 +26,6 @@ from extreme_estimator.extreme_models.margin_model.param_function.param_function from extreme_estimator.extreme_models.max_stable_model.abstract_max_stable_model import CovarianceFunction from extreme_estimator.margin_fits.abstract_params import AbstractParams from extreme_estimator.margin_fits.gev.gev_params import GevParams -from extreme_estimator.margin_fits.gev.gevmle_fit import GevMleFit from extreme_estimator.margin_fits.gev.ismev_gev_fit import IsmevGevFit from extreme_estimator.margin_fits.gpd.gpd_params import GpdParams from extreme_estimator.margin_fits.gpd.gpdmle_fit import GpdMleFit @@ -38,10 +35,7 @@ from spatio_temporal_dataset.coordinates.spatio_temporal_coordinates.abstract_sp AbstractSpatioTemporalCoordinates from spatio_temporal_dataset.coordinates.temporal_coordinates.generated_temporal_coordinates import \ ConsecutiveTemporalCoordinates -from spatio_temporal_dataset.coordinates.transformed_coordinates.transformed_coordinates import TransformedCoordinates from spatio_temporal_dataset.dataset.abstract_dataset import AbstractDataset -from spatio_temporal_dataset.spatio_temporal_observations.abstract_spatio_temporal_observations import \ - AbstractSpatioTemporalObservations from spatio_temporal_dataset.spatio_temporal_observations.annual_maxima_observations import AnnualMaxima from test.test_utils import load_test_max_stable_models from utils import get_display_name_from_object_type, VERSION_TIME, float_to_str_with_only_some_significant_digits, \ diff --git a/experiment/trend_analysis/__init__.py b/experiment/trend_analysis/__init__.py new file mode 100644 index 00000000..e69de29b diff --git a/experiment/meteo_france_SCM_study/abstract_score.py b/experiment/trend_analysis/abstract_score.py similarity index 100% rename from experiment/meteo_france_SCM_study/abstract_score.py rename to experiment/trend_analysis/abstract_score.py diff --git a/experiment/meteo_france_SCM_study/abstract_trend_test.py b/experiment/trend_analysis/abstract_trend_test.py similarity index 91% rename from experiment/meteo_france_SCM_study/abstract_trend_test.py rename to experiment/trend_analysis/abstract_trend_test.py index 75ed24b8..7a43a7da 100644 --- a/experiment/meteo_france_SCM_study/abstract_trend_test.py +++ b/experiment/trend_analysis/abstract_trend_test.py @@ -2,8 +2,8 @@ import random import numpy as np -from experiment.meteo_france_SCM_study.mann_kendall_test import mann_kendall_test -from experiment.meteo_france_SCM_study.abstract_score import MannKendall +from experiment.trend_analysis.mann_kendall_test import mann_kendall_test +from experiment.trend_analysis.abstract_score import MannKendall class AbstractTrendTest(object): @@ -95,3 +95,11 @@ class MannKendallTrendTest(AbstractTrendTest): def is_significant(self) -> bool: assert 'reject' in self.MK or 'accept' in self.MK return 'accept' in self.MK + + +class SpearmanRhoTrendTest(AbstractTrendTest): + pass + + +class AbstractNonStationaryGevTrendTest(AbstractTrendTest): + pass diff --git a/experiment/meteo_france_SCM_study/mann_kendall_test.py b/experiment/trend_analysis/mann_kendall_test.py similarity index 100% rename from experiment/meteo_france_SCM_study/mann_kendall_test.py rename to experiment/trend_analysis/mann_kendall_test.py diff --git a/experiment/meteo_france_SCM_study/visualization/study_visualization/non_stationary_trends.py b/experiment/trend_analysis/non_stationary_trends.py similarity index 100% rename from experiment/meteo_france_SCM_study/visualization/study_visualization/non_stationary_trends.py rename to experiment/trend_analysis/non_stationary_trends.py diff --git a/test/test_experiment/test_coordinate_sensitivity.py b/test/test_experiment/test_coordinate_sensitivity.py index 24e24d44..ea4daa97 100644 --- a/test/test_experiment/test_coordinate_sensitivity.py +++ b/test/test_experiment/test_coordinate_sensitivity.py @@ -3,12 +3,11 @@ import unittest from experiment.meteo_france_SCM_study.crocus.crocus import CrocusSwe from experiment.meteo_france_SCM_study.visualization.study_visualization.main_study_visualizer import \ study_iterator_global -from experiment.meteo_france_SCM_study.visualization.study_visualization.non_stationary_trends import \ +from experiment.trend_analysis.non_stationary_trends import \ ConditionalIndedendenceLocationTrendTest from experiment.meteo_france_SCM_study.visualization.study_visualization.study_visualizer import StudyVisualizer from spatio_temporal_dataset.coordinates.transformed_coordinates.transformation.uniform_normalization import \ - BetweenZeroAndOneNormalization, BetweenMinusOneAndOneNormalization, BetweenZeroAndTenNormalization, \ - BetweenZeroAndOneNormalizationMinEpsilon, BetweenZeroAndOneNormalizationMaxEpsilon + BetweenZeroAndOneNormalization, BetweenZeroAndOneNormalizationMinEpsilon, BetweenZeroAndOneNormalizationMaxEpsilon from utils import get_display_name_from_object_type -- GitLab