diff --git a/projects/altitude_spatial_model/altitudes_fit/__init__.py b/extreme_trend/ensemble_fit/__init__.py similarity index 100% rename from projects/altitude_spatial_model/altitudes_fit/__init__.py rename to extreme_trend/ensemble_fit/__init__.py diff --git a/projects/projected_snowfall/elevation_temporal_model_for_projections/abstract_ensemble_fit.py b/extreme_trend/ensemble_fit/abstract_ensemble_fit.py similarity index 100% rename from projects/projected_snowfall/elevation_temporal_model_for_projections/abstract_ensemble_fit.py rename to extreme_trend/ensemble_fit/abstract_ensemble_fit.py diff --git a/projects/projected_snowfall/elevation_temporal_model_for_projections/ensemble_fit/clustered_ensemble.py b/extreme_trend/ensemble_fit/clustered_ensemble.py similarity index 100% rename from projects/projected_snowfall/elevation_temporal_model_for_projections/ensemble_fit/clustered_ensemble.py rename to extreme_trend/ensemble_fit/clustered_ensemble.py diff --git a/projects/altitude_spatial_model/altitudes_fit/one_fold_analysis/__init__.py b/extreme_trend/ensemble_fit/independent_ensemble_fit/__init__.py similarity index 100% rename from projects/altitude_spatial_model/altitudes_fit/one_fold_analysis/__init__.py rename to extreme_trend/ensemble_fit/independent_ensemble_fit/__init__.py diff --git a/projects/projected_snowfall/elevation_temporal_model_for_projections/independent_ensemble_fit/independent_ensemble_fit.py b/extreme_trend/ensemble_fit/independent_ensemble_fit/independent_ensemble_fit.py similarity index 84% rename from projects/projected_snowfall/elevation_temporal_model_for_projections/independent_ensemble_fit/independent_ensemble_fit.py rename to extreme_trend/ensemble_fit/independent_ensemble_fit/independent_ensemble_fit.py index f8b2fd675728997c6f9ec4e8ad6d7af7baa7f39c..4e6c250bf3818c09e759875655807dc39fa2b18f 100644 --- a/projects/projected_snowfall/elevation_temporal_model_for_projections/independent_ensemble_fit/independent_ensemble_fit.py +++ b/extreme_trend/ensemble_fit/independent_ensemble_fit/independent_ensemble_fit.py @@ -1,11 +1,11 @@ import numpy as np -from projects.altitude_spatial_model.altitudes_fit.one_fold_analysis.altitudes_studies_visualizer_for_non_stationary_models import \ +from extreme_trend.one_fold_analysis.altitudes_studies_visualizer_for_non_stationary_models import \ AltitudesStudiesVisualizerForNonStationaryModels -from projects.altitude_spatial_model.altitudes_fit.one_fold_analysis.one_fold_fit import OneFoldFit -from projects.projected_snowfall.elevation_temporal_model_for_projections.abstract_ensemble_fit import \ +from extreme_trend.one_fold_analysis.one_fold_fit import OneFoldFit +from extreme_trend.elevation_temporal_model_for_projections.abstract_ensemble_fit import \ AbstractEnsembleFit -from projects.projected_snowfall.elevation_temporal_model_for_projections.independent_ensemble_fit.visualizer_merge import \ +from extreme_trend.elevation_temporal_model_for_projections.independent_ensemble_fit import \ VisualizerMerge diff --git a/projects/projected_snowfall/elevation_temporal_model_for_projections/independent_ensemble_fit/one_fold_fit_merge.py b/extreme_trend/ensemble_fit/independent_ensemble_fit/one_fold_fit_merge.py similarity index 87% rename from projects/projected_snowfall/elevation_temporal_model_for_projections/independent_ensemble_fit/one_fold_fit_merge.py rename to extreme_trend/ensemble_fit/independent_ensemble_fit/one_fold_fit_merge.py index 1fbcc2ba0658172431e2e4fb83826ebda95bd697..89a1d91109a22b84592ad5b631c8c0ab55378e95 100644 --- a/projects/projected_snowfall/elevation_temporal_model_for_projections/independent_ensemble_fit/one_fold_fit_merge.py +++ b/extreme_trend/ensemble_fit/independent_ensemble_fit/one_fold_fit_merge.py @@ -2,7 +2,7 @@ from typing import List import numpy as np -from projects.altitude_spatial_model.altitudes_fit.one_fold_analysis.one_fold_fit import OneFoldFit +from extreme_trend.one_fold_analysis.one_fold_fit import OneFoldFit class OneFoldFitMerge(OneFoldFit): diff --git a/projects/projected_snowfall/elevation_temporal_model_for_projections/independent_ensemble_fit/visualizer_merge.py b/extreme_trend/ensemble_fit/independent_ensemble_fit/visualizer_merge.py similarity index 85% rename from projects/projected_snowfall/elevation_temporal_model_for_projections/independent_ensemble_fit/visualizer_merge.py rename to extreme_trend/ensemble_fit/independent_ensemble_fit/visualizer_merge.py index 907cccf24d6941b5f5d604e9f9969ee4c4807bf8..edd9cb7538a4c9e1a1485f3a40160b0e49834860 100644 --- a/projects/projected_snowfall/elevation_temporal_model_for_projections/independent_ensemble_fit/visualizer_merge.py +++ b/extreme_trend/ensemble_fit/independent_ensemble_fit/visualizer_merge.py @@ -1,13 +1,12 @@ -import copy from typing import Dict, List import numpy as np from extreme_fit.model.margin_model.utils import MarginFitMethod -from projects.altitude_spatial_model.altitudes_fit.one_fold_analysis.altitudes_studies_visualizer_for_non_stationary_models import \ +from extreme_trend.one_fold_analysis.altitudes_studies_visualizer_for_non_stationary_models import \ AltitudesStudiesVisualizerForNonStationaryModels -from projects.altitude_spatial_model.altitudes_fit.one_fold_analysis.one_fold_fit import OneFoldFit -from projects.projected_snowfall.elevation_temporal_model_for_projections.independent_ensemble_fit.one_fold_fit_merge import \ +from extreme_trend.one_fold_analysis.one_fold_fit import OneFoldFit +from extreme_trend.elevation_temporal_model_for_projections.independent_ensemble_fit import \ OneFoldFitMerge diff --git a/projects/projected_snowfall/elevation_temporal_model_for_projections/ensemble_fit/together_ensemble_fit.py b/extreme_trend/ensemble_fit/together_ensemble_fit.py similarity index 100% rename from projects/projected_snowfall/elevation_temporal_model_for_projections/ensemble_fit/together_ensemble_fit.py rename to extreme_trend/ensemble_fit/together_ensemble_fit.py diff --git a/projects/projected_snowfall/elevation_temporal_model_for_projections/visualizer_for_projection_ensemble.py b/extreme_trend/ensemble_fit/visualizer_for_projection_ensemble.py similarity index 97% rename from projects/projected_snowfall/elevation_temporal_model_for_projections/visualizer_for_projection_ensemble.py rename to extreme_trend/ensemble_fit/visualizer_for_projection_ensemble.py index 06f27adad6b3262e99c0ae6636c355be23395795..41ac5f3cab7587928c48b0c470cbdd425c0c3ba6 100644 --- a/projects/projected_snowfall/elevation_temporal_model_for_projections/visualizer_for_projection_ensemble.py +++ b/extreme_trend/ensemble_fit/visualizer_for_projection_ensemble.py @@ -9,7 +9,7 @@ from projects.altitude_spatial_model.altitudes_fit.one_fold_analysis.altitude_gr from projects.altitude_spatial_model.altitudes_fit.one_fold_analysis.plots.plot_histogram_altitude_studies import \ plot_histogram_all_trends_against_altitudes, plot_shoe_plot_changes_against_altitude from projects.altitude_spatial_model.altitudes_fit.one_fold_analysis.utils_altitude_studies_visualizer import compute_and_assign_max_abs -from projects.projected_snowfall.elevation_temporal_model_for_projections.independent_ensemble_fit.independent_ensemble_fit import \ +from extreme_trend.elevation_temporal_model_for_projections.independent_ensemble_fit import \ IndependentEnsembleFit diff --git a/projects/projected_snowfall/elevation_temporal_model_for_projections/visualizer_for_sensitivity.py b/extreme_trend/ensemble_fit/visualizer_for_sensitivity.py similarity index 93% rename from projects/projected_snowfall/elevation_temporal_model_for_projections/visualizer_for_sensitivity.py rename to extreme_trend/ensemble_fit/visualizer_for_sensitivity.py index 53058fcaf8115a8a4b742b688ee547d16636bc65..19c66626c774faca65f5674df6ee5f2d5d8897c2 100644 --- a/projects/projected_snowfall/elevation_temporal_model_for_projections/visualizer_for_sensitivity.py +++ b/extreme_trend/ensemble_fit/visualizer_for_sensitivity.py @@ -8,12 +8,12 @@ from extreme_data.meteo_france_data.scm_models_data.utils import Season from extreme_fit.model.margin_model.polynomial_margin_model.spatio_temporal_polynomial_model import \ AbstractSpatioTemporalPolynomialModel from extreme_fit.model.margin_model.utils import MarginFitMethod -from projects.altitude_spatial_model.altitudes_fit.one_fold_analysis.altitude_group import \ - get_altitude_class_from_altitudes, get_linestyle_for_altitude_class -from projects.projected_snowfall.elevation_temporal_model_for_projections.independent_ensemble_fit.independent_ensemble_fit import \ +from extreme_trend.elevation_temporal_model_for_projections.independent_ensemble_fit.independent_ensemble_fit import \ IndependentEnsembleFit -from projects.projected_snowfall.elevation_temporal_model_for_projections.visualizer_for_projection_ensemble import \ +from extreme_trend.elevation_temporal_model_for_projections.visualizer_for_projection_ensemble import \ VisualizerForProjectionEnsemble +from extreme_trend.one_fold_analysis.altitude_group import get_altitude_class_from_altitudes, \ + get_linestyle_for_altitude_class class VisualizerForSensivity(object): diff --git a/projects/altitude_spatial_model/altitudes_fit/one_fold_analysis/plots/__init__.py b/extreme_trend/one_fold_analysis/__init__.py similarity index 100% rename from projects/altitude_spatial_model/altitudes_fit/one_fold_analysis/plots/__init__.py rename to extreme_trend/one_fold_analysis/__init__.py diff --git a/projects/altitude_spatial_model/altitudes_fit/one_fold_analysis/altitude_group.py b/extreme_trend/one_fold_analysis/altitude_group.py similarity index 100% rename from projects/altitude_spatial_model/altitudes_fit/one_fold_analysis/altitude_group.py rename to extreme_trend/one_fold_analysis/altitude_group.py diff --git a/projects/altitude_spatial_model/altitudes_fit/one_fold_analysis/altitudes_studies_visualizer_for_non_stationary_models.py b/extreme_trend/one_fold_analysis/altitudes_studies_visualizer_for_non_stationary_models.py similarity index 99% rename from projects/altitude_spatial_model/altitudes_fit/one_fold_analysis/altitudes_studies_visualizer_for_non_stationary_models.py rename to extreme_trend/one_fold_analysis/altitudes_studies_visualizer_for_non_stationary_models.py index 9e06b14b5d176a702df3a8967c5338549d37c8c6..bd35a265fb077272a3f4e18dddc925d9e800358c 100644 --- a/projects/altitude_spatial_model/altitudes_fit/one_fold_analysis/altitudes_studies_visualizer_for_non_stationary_models.py +++ b/extreme_trend/one_fold_analysis/altitudes_studies_visualizer_for_non_stationary_models.py @@ -20,9 +20,9 @@ from extreme_fit.model.margin_model.polynomial_margin_model.spatio_temporal_poly AbstractSpatioTemporalPolynomialModel from extreme_fit.model.margin_model.utils import MarginFitMethod from extreme_data.meteo_france_data.scm_models_data.altitudes_studies import AltitudesStudies -from projects.altitude_spatial_model.altitudes_fit.one_fold_analysis.altitude_group import \ +from extreme_trend.one_fold_analysis.altitude_group import \ get_altitude_group_from_altitudes, VeyHighAltitudeGroup, MidAltitudeGroup -from projects.altitude_spatial_model.altitudes_fit.one_fold_analysis.one_fold_fit import \ +from extreme_trend.one_fold_analysis.one_fold_fit import \ OneFoldFit from spatio_temporal_dataset.coordinates.abstract_coordinates import AbstractCoordinates from spatio_temporal_dataset.coordinates.temporal_coordinates.abstract_temporal_covariate_for_fit import \ diff --git a/projects/altitude_spatial_model/altitudes_fit/one_fold_analysis/one_fold_fit.py b/extreme_trend/one_fold_analysis/one_fold_fit.py similarity index 98% rename from projects/altitude_spatial_model/altitudes_fit/one_fold_analysis/one_fold_fit.py rename to extreme_trend/one_fold_analysis/one_fold_fit.py index 525e969e6fa9df844d846d0c8f817feb3fd818a6..cf20cc0f2f520848c3f50259338c24c1bf970404 100644 --- a/projects/altitude_spatial_model/altitudes_fit/one_fold_analysis/one_fold_fit.py +++ b/extreme_trend/one_fold_analysis/one_fold_fit.py @@ -4,17 +4,13 @@ import time from itertools import chain from multiprocessing import Pool -import numpy.testing as npt import numpy as np -import rpy2 from cached_property import cached_property from scipy.stats import chi2 from sklearn.utils import resample from extreme_fit.distribution.gev.gev_params import GevParams from extreme_fit.distribution.gumbel.gumbel_gof import goodness_of_fit_anderson -from extreme_fit.estimator.margin_estimator.abstract_margin_estimator import AbstractMarginEstimator, \ - LinearMarginEstimator from extreme_fit.estimator.margin_estimator.utils import fitted_linear_margin_estimator_short from extreme_fit.function.param_function.polynomial_coef import PolynomialAllCoef, PolynomialCoef from extreme_fit.model.margin_model.polynomial_margin_model.gev_altitudinal_models import StationaryAltitudinal @@ -31,9 +27,8 @@ from extreme_fit.model.result_from_model_fit.result_from_extremes.confidence_int ConfidenceIntervalMethodFromExtremes from extreme_fit.model.result_from_model_fit.result_from_extremes.eurocode_return_level_uncertainties import \ EurocodeConfidenceIntervalFromExtremes -from projects.altitude_spatial_model.altitudes_fit.one_fold_analysis.altitude_group import AbstractAltitudeGroup, \ - DefaultAltitudeGroup, altitudes_for_groups -from root_utils import classproperty, NB_CORES, batch +from extreme_trend.one_fold_analysis.altitude_group import DefaultAltitudeGroup, altitudes_for_groups +from root_utils import NB_CORES, batch from spatio_temporal_dataset.coordinates.temporal_coordinates.abstract_temporal_covariate_for_fit import \ AnomalyTemperatureTemporalCovariate, TimeTemporalCovariate from spatio_temporal_dataset.dataset.abstract_dataset import AbstractDataset diff --git a/projects/altitude_spatial_model/altitudes_fit/two_fold_analysis/__init__.py b/extreme_trend/one_fold_analysis/plots/__init__.py similarity index 100% rename from projects/altitude_spatial_model/altitudes_fit/two_fold_analysis/__init__.py rename to extreme_trend/one_fold_analysis/plots/__init__.py diff --git a/projects/altitude_spatial_model/altitudes_fit/one_fold_analysis/plots/compute_histogram_change_in_total_snowfall.py b/extreme_trend/one_fold_analysis/plots/compute_histogram_change_in_total_snowfall.py similarity index 95% rename from projects/altitude_spatial_model/altitudes_fit/one_fold_analysis/plots/compute_histogram_change_in_total_snowfall.py rename to extreme_trend/one_fold_analysis/plots/compute_histogram_change_in_total_snowfall.py index c7d69c79e2ed661b891acb1a74dc5b8a3a8722cd..2bc2fd99850663b5c546c4995c46a9cb74c13e38 100644 --- a/projects/altitude_spatial_model/altitudes_fit/one_fold_analysis/plots/compute_histogram_change_in_total_snowfall.py +++ b/extreme_trend/one_fold_analysis/plots/compute_histogram_change_in_total_snowfall.py @@ -4,7 +4,7 @@ import numpy as np from extreme_data.meteo_france_data.scm_models_data.safran.safran import SafranSnowfall from extreme_fit.utils import fit_linear_regression -from projects.altitude_spatial_model.altitudes_fit.one_fold_analysis.altitudes_studies_visualizer_for_non_stationary_models import \ +from extreme_trend.one_fold_analysis.altitudes_studies_visualizer_for_non_stationary_models import \ AltitudesStudiesVisualizerForNonStationaryModels diff --git a/projects/altitude_spatial_model/altitudes_fit/one_fold_analysis/plots/plot_coherence_curves.py b/extreme_trend/one_fold_analysis/plots/plot_coherence_curves.py similarity index 97% rename from projects/altitude_spatial_model/altitudes_fit/one_fold_analysis/plots/plot_coherence_curves.py rename to extreme_trend/one_fold_analysis/plots/plot_coherence_curves.py index d8b762225beb5cf457c55ede3f64b9d85e596f49..a8ea0a5cc0517165044efe03d084ee92161caa81 100644 --- a/projects/altitude_spatial_model/altitudes_fit/one_fold_analysis/plots/plot_coherence_curves.py +++ b/extreme_trend/one_fold_analysis/plots/plot_coherence_curves.py @@ -4,9 +4,9 @@ import numpy as np from extreme_fit.model.result_from_model_fit.result_from_extremes.abstract_extract_eurocode_return_level import \ AbstractExtractEurocodeReturnLevel -from projects.altitude_spatial_model.altitudes_fit.one_fold_analysis.altitudes_studies_visualizer_for_non_stationary_models import \ +from extreme_trend.one_fold_analysis.altitudes_studies_visualizer_for_non_stationary_models import \ AltitudesStudiesVisualizerForNonStationaryModels -from projects.altitude_spatial_model.altitudes_fit.one_fold_analysis.one_fold_fit import OneFoldFit +from extreme_trend.one_fold_analysis.one_fold_fit import OneFoldFit def plot_coherence_curves(massif_names, visualizer_list: List[AltitudesStudiesVisualizerForNonStationaryModels]): diff --git a/projects/altitude_spatial_model/altitudes_fit/one_fold_analysis/plots/plot_histogram_altitude_studies.py b/extreme_trend/one_fold_analysis/plots/plot_histogram_altitude_studies.py similarity index 97% rename from projects/altitude_spatial_model/altitudes_fit/one_fold_analysis/plots/plot_histogram_altitude_studies.py rename to extreme_trend/one_fold_analysis/plots/plot_histogram_altitude_studies.py index 98f4949f7c29330ec3f04a59a5a40ef1fd29c3b6..ba79292c4c23e75e81a1bc8cbe69d560756ce9b4 100644 --- a/projects/altitude_spatial_model/altitudes_fit/one_fold_analysis/plots/plot_histogram_altitude_studies.py +++ b/extreme_trend/one_fold_analysis/plots/plot_histogram_altitude_studies.py @@ -13,10 +13,10 @@ from matplotlib.lines import Line2D from extreme_fit.model.result_from_model_fit.result_from_extremes.abstract_extract_eurocode_return_level import \ AbstractExtractEurocodeReturnLevel -from projects.altitude_spatial_model.altitudes_fit.one_fold_analysis.altitudes_studies_visualizer_for_non_stationary_models import \ +from extreme_trend.one_fold_analysis.altitudes_studies_visualizer_for_non_stationary_models import \ AltitudesStudiesVisualizerForNonStationaryModels -from projects.altitude_spatial_model.altitudes_fit.one_fold_analysis.one_fold_fit import OneFoldFit -from projects.altitude_spatial_model.altitudes_fit.one_fold_analysis.plots.compute_histogram_change_in_total_snowfall import \ +from extreme_trend.one_fold_analysis.one_fold_fit import OneFoldFit +from extreme_trend.one_fold_analysis.plots.compute_histogram_change_in_total_snowfall import \ compute_changes_in_total_snowfall diff --git a/projects/altitude_spatial_model/altitudes_fit/one_fold_analysis/utils_altitude_studies_visualizer.py b/extreme_trend/one_fold_analysis/utils_altitude_studies_visualizer.py similarity index 100% rename from projects/altitude_spatial_model/altitudes_fit/one_fold_analysis/utils_altitude_studies_visualizer.py rename to extreme_trend/one_fold_analysis/utils_altitude_studies_visualizer.py diff --git a/projects/projected_snowfall/data/__init__.py b/extreme_trend/two_fold_analysis/__init__.py similarity index 100% rename from projects/projected_snowfall/data/__init__.py rename to extreme_trend/two_fold_analysis/__init__.py diff --git a/projects/altitude_spatial_model/altitudes_fit/two_fold_analysis/two_fold_datasets_generator.py b/extreme_trend/two_fold_analysis/two_fold_datasets_generator.py similarity index 100% rename from projects/altitude_spatial_model/altitudes_fit/two_fold_analysis/two_fold_datasets_generator.py rename to extreme_trend/two_fold_analysis/two_fold_datasets_generator.py diff --git a/projects/altitude_spatial_model/altitudes_fit/two_fold_analysis/two_fold_detail_fit.py b/extreme_trend/two_fold_analysis/two_fold_detail_fit.py similarity index 96% rename from projects/altitude_spatial_model/altitudes_fit/two_fold_analysis/two_fold_detail_fit.py rename to extreme_trend/two_fold_analysis/two_fold_detail_fit.py index e166d28c2d841b5599dc159c20b89e9298a5d2f7..501a8145a24041b5707c46279daaa0ba7e1eecbd 100644 --- a/projects/altitude_spatial_model/altitudes_fit/two_fold_analysis/two_fold_detail_fit.py +++ b/extreme_trend/two_fold_analysis/two_fold_detail_fit.py @@ -4,7 +4,7 @@ import numpy as np from extreme_fit.estimator.margin_estimator.abstract_margin_estimator import LinearMarginEstimator from extreme_fit.estimator.margin_estimator.utils import fitted_linear_margin_estimator_short -from projects.altitude_spatial_model.altitudes_fit.two_fold_analysis.utils import get_key_with_min_value, Score, Grouping +from extreme_trend.two_fold_analysis.utils import Grouping, get_key_with_min_value, Score from spatio_temporal_dataset.slicer.split import Split diff --git a/projects/altitude_spatial_model/altitudes_fit/two_fold_analysis/two_fold_fit.py b/extreme_trend/two_fold_analysis/two_fold_fit.py similarity index 82% rename from projects/altitude_spatial_model/altitudes_fit/two_fold_analysis/two_fold_fit.py rename to extreme_trend/two_fold_analysis/two_fold_fit.py index faedb05c46cd3fb29d1444e5a20b19e79789d21a..49ae85e52a7ee4177d0dae1f9fadfd18e02b3e0f 100644 --- a/projects/altitude_spatial_model/altitudes_fit/two_fold_analysis/two_fold_fit.py +++ b/extreme_trend/two_fold_analysis/two_fold_fit.py @@ -4,9 +4,9 @@ from cached_property import cached_property from extreme_fit.model.margin_model.utils import \ MarginFitMethod -from projects.altitude_spatial_model.altitudes_fit.two_fold_analysis.two_fold_datasets_generator import TwoFoldDatasetsGenerator -from projects.altitude_spatial_model.altitudes_fit.two_fold_analysis.two_fold_detail_fit import TwoFoldMassifFit -from projects.altitude_spatial_model.altitudes_fit.two_fold_analysis.utils import Score, Grouping +from extreme_trend.two_fold_analysis.two_fold_datasets_generator import TwoFoldDatasetsGenerator +from extreme_trend.two_fold_analysis.two_fold_detail_fit import TwoFoldMassifFit +from extreme_trend.two_fold_analysis.utils import Score, Grouping class TwoFoldFit(object): diff --git a/projects/altitude_spatial_model/altitudes_fit/two_fold_analysis/utils.py b/extreme_trend/two_fold_analysis/utils.py similarity index 100% rename from projects/altitude_spatial_model/altitudes_fit/two_fold_analysis/utils.py rename to extreme_trend/two_fold_analysis/utils.py diff --git a/projects/projected_snowfall/elevation_temporal_model_for_projections/__init__.py b/projects/altitude_spatial_model/checks/__init__.py similarity index 100% rename from projects/projected_snowfall/elevation_temporal_model_for_projections/__init__.py rename to projects/altitude_spatial_model/checks/__init__.py diff --git a/projects/altitude_spatial_model/verification_return_level.py b/projects/altitude_spatial_model/checks/verification_return_level.py similarity index 100% rename from projects/altitude_spatial_model/verification_return_level.py rename to projects/altitude_spatial_model/checks/verification_return_level.py diff --git a/projects/altitude_spatial_model/altitudes_fit/main_altitudes_studies.py b/projects/altitude_spatial_model/main_altitudes_studies.py similarity index 88% rename from projects/altitude_spatial_model/altitudes_fit/main_altitudes_studies.py rename to projects/altitude_spatial_model/main_altitudes_studies.py index accae7e190ac109e2ebb682cffe8200e91b58e56..2112dd3ec691afba47eefa98374bd7c095df4639 100644 --- a/projects/altitude_spatial_model/altitudes_fit/main_altitudes_studies.py +++ b/projects/altitude_spatial_model/main_altitudes_studies.py @@ -4,13 +4,16 @@ from typing import List import matplotlib as mpl + +from extreme_trend.one_fold_analysis.utils_altitude_studies_visualizer import load_visualizer_list + mpl.rcParams['text.usetex'] = True mpl.rcParams['text.latex.preamble'] = [r'\usepackage{amsmath}'] import matplotlib matplotlib.use('Agg') -from projects.altitude_spatial_model.altitudes_fit.one_fold_analysis.plots.plot_histogram_altitude_studies import \ +from extreme_trend.one_fold_analysis.plots.plot_histogram_altitude_studies import \ plot_shoe_plot_changes_against_altitude, plot_histogram_all_trends_against_altitudes, \ plot_histogram_all_models_against_altitudes @@ -20,13 +23,10 @@ from extreme_fit.model.result_from_model_fit.result_from_extremes.abstract_extra from extreme_fit.model.utils import set_seed_for_test -from projects.altitude_spatial_model.altitudes_fit.one_fold_analysis.plots.plot_coherence_curves import plot_coherence_curves - - +from extreme_trend.one_fold_analysis.plots.plot_coherence_curves import plot_coherence_curves -from projects.altitude_spatial_model.altitudes_fit.one_fold_analysis.utils_altitude_studies_visualizer import load_visualizer_list -from projects.altitude_spatial_model.altitudes_fit.one_fold_analysis.altitude_group import altitudes_for_groups +from extreme_trend.one_fold_analysis.altitude_group import altitudes_for_groups from extreme_data.meteo_france_data.scm_models_data.safran.safran import SafranSnowfall1Day, SafranSnowfall3Days, \ SafranSnowfall5Days, SafranSnowfall7Days diff --git a/projects/altitude_spatial_model/preliminary_analysis.py b/projects/altitude_spatial_model/preliminary_analysis.py index c0fb5408bbe3e5725f91e002b4a18f9a62ce3ae0..6028ea83b4e00f1667407cfcc57fcbd6d5c19ebf 100644 --- a/projects/altitude_spatial_model/preliminary_analysis.py +++ b/projects/altitude_spatial_model/preliminary_analysis.py @@ -14,7 +14,7 @@ from extreme_data.meteo_france_data.scm_models_data.visualization.study_visualiz from extreme_fit.distribution.gev.gev_params import GevParams from extreme_fit.utils import fit_linear_regression from extreme_data.meteo_france_data.scm_models_data.altitudes_studies import AltitudesStudies -from projects.altitude_spatial_model.altitudes_fit.one_fold_analysis.altitude_group import altitudes_for_groups +from extreme_trend.one_fold_analysis.altitude_group import altitudes_for_groups class PointwiseGevStudyVisualizer(AltitudesStudies): diff --git a/projects/archive/gap_between_my_safran2019_and_safran_2019/main_gap_altitudes_studies.py b/projects/archive/gap_between_my_safran2019_and_safran_2019/main_gap_altitudes_studies.py index add2d229b21e9c0c979deb726a03d74297868390..54c89cc69b05ab68f18a50063cfadfc5a26a4964 100644 --- a/projects/archive/gap_between_my_safran2019_and_safran_2019/main_gap_altitudes_studies.py +++ b/projects/archive/gap_between_my_safran2019_and_safran_2019/main_gap_altitudes_studies.py @@ -20,7 +20,7 @@ from extreme_fit.model.utils import set_seed_for_test mpl.rcParams['text.usetex'] = True mpl.rcParams['text.latex.preamble'] = [r'\usepackage{amsmath}'] -from projects.altitude_spatial_model.altitudes_fit.one_fold_analysis.altitude_group import altitudes_for_groups +from extreme_trend.one_fold_analysis.altitude_group import altitudes_for_groups from extreme_data.meteo_france_data.scm_models_data.safran.safran import SafranSnowfall1Day, SafranSnowfall3Days, \ SafranSnowfall5Days, SafranSnowfall7Days diff --git a/projects/archive/seasonal_analysis/main_season_repartition_of_maxima.py b/projects/archive/seasonal_analysis/main_season_repartition_of_maxima.py index 36521cdcb74dd526dc16a98c0d07f43126b521ae..9eda27ace70af9880207bb893a927bcf13369596 100644 --- a/projects/archive/seasonal_analysis/main_season_repartition_of_maxima.py +++ b/projects/archive/seasonal_analysis/main_season_repartition_of_maxima.py @@ -6,7 +6,7 @@ import numpy as np from extreme_data.meteo_france_data.scm_models_data.safran.safran import SafranSnowfall1Day from extreme_data.meteo_france_data.scm_models_data.altitudes_studies import AltitudesStudies -from projects.altitude_spatial_model.altitudes_fit.one_fold_analysis.altitude_group import altitudes_for_groups, \ +from extreme_trend.one_fold_analysis.altitude_group import altitudes_for_groups, \ get_altitude_group_from_altitudes diff --git a/projects/projected_snowfall/elevation_temporal_model_for_projections/ensemble_fit/__init__.py b/projects/projected_snowfall/checks/__init__.py similarity index 100% rename from projects/projected_snowfall/elevation_temporal_model_for_projections/ensemble_fit/__init__.py rename to projects/projected_snowfall/checks/__init__.py diff --git a/projects/projected_snowfall/main_inquiry_weird_pattern.py b/projects/projected_snowfall/checks/main_inquiry_weird_pattern.py similarity index 100% rename from projects/projected_snowfall/main_inquiry_weird_pattern.py rename to projects/projected_snowfall/checks/main_inquiry_weird_pattern.py diff --git a/projects/projected_snowfall/elevation_temporal_model_for_projections/main_elevation_temporal_for_projections_ensemble.py b/projects/projected_snowfall/main_elevation_temporal_for_projections_ensemble.py similarity index 89% rename from projects/projected_snowfall/elevation_temporal_model_for_projections/main_elevation_temporal_for_projections_ensemble.py rename to projects/projected_snowfall/main_elevation_temporal_for_projections_ensemble.py index 798ce66259394d7dc338b14ddbe8e7d7ec99e033..eb0cf07dc742609286367170bab282049964e345 100644 --- a/projects/projected_snowfall/elevation_temporal_model_for_projections/main_elevation_temporal_for_projections_ensemble.py +++ b/projects/projected_snowfall/main_elevation_temporal_for_projections_ensemble.py @@ -4,7 +4,7 @@ from typing import List import matplotlib as mpl -from projects.projected_snowfall.elevation_temporal_model_for_projections.visualizer_for_sensitivity import \ +from extreme_trend.elevation_temporal_model_for_projections.visualizer_for_sensitivity import \ VisualizerForSensivity mpl.rcParams['text.usetex'] = True @@ -12,7 +12,7 @@ mpl.rcParams['text.latex.preamble'] = [r'\usepackage{amsmath}'] from extreme_fit.model.margin_model.polynomial_margin_model.utils import \ ALTITUDINAL_GEV_MODELS_BASED_ON_POINTWISE_ANALYSIS -from projects.projected_snowfall.elevation_temporal_model_for_projections.visualizer_for_projection_ensemble import \ +from extreme_trend.elevation_temporal_model_for_projections.visualizer_for_projection_ensemble import \ VisualizerForProjectionEnsemble import matplotlib from extreme_fit.model.utils import set_seed_for_test @@ -20,7 +20,7 @@ from extreme_fit.model.utils import set_seed_for_test from extreme_data.meteo_france_data.adamont_data.adamont.adamont_snowfall import AdamontSnowfall from extreme_data.meteo_france_data.adamont_data.adamont_scenario import AdamontScenario, get_gcm_rcm_couples, \ rcp_scenarios -from projects.projected_snowfall.elevation_temporal_model_for_projections.independent_ensemble_fit.independent_ensemble_fit import \ +from extreme_trend.elevation_temporal_model_for_projections.independent_ensemble_fit import \ IndependentEnsembleFit from spatio_temporal_dataset.coordinates.temporal_coordinates.abstract_temporal_covariate_for_fit import \ AnomalyTemperatureTemporalCovariate, TimeTemporalCovariate @@ -30,7 +30,7 @@ matplotlib.use('Agg') from extreme_fit.model.result_from_model_fit.result_from_extremes.abstract_extract_eurocode_return_level import \ AbstractExtractEurocodeReturnLevel -from projects.altitude_spatial_model.altitudes_fit.one_fold_analysis.altitude_group import altitudes_for_groups +from extreme_trend.one_fold_analysis.altitude_group import altitudes_for_groups from extreme_data.meteo_france_data.scm_models_data.utils import Season diff --git a/projects/projected_snowfall/elevation_temporal_model_for_projections/independent_ensemble_fit/__init__.py b/projects/projected_snowfall/section_data/__init__.py similarity index 100% rename from projects/projected_snowfall/elevation_temporal_model_for_projections/independent_ensemble_fit/__init__.py rename to projects/projected_snowfall/section_data/__init__.py diff --git a/projects/projected_snowfall/data/main_data.py b/projects/projected_snowfall/section_data/main_data.py similarity index 100% rename from projects/projected_snowfall/data/main_data.py rename to projects/projected_snowfall/section_data/main_data.py diff --git a/test/test_projects/test_contrasting/test_altitudes_studies.py b/test/test_extreme_data/test_meteo_france_data/test_altitudes_studies.py similarity index 100% rename from test/test_projects/test_contrasting/test_altitudes_studies.py rename to test/test_extreme_data/test_meteo_france_data/test_altitudes_studies.py diff --git a/test/test_extreme_fit/test_estimator/test_gev_spatio_temporal_extremes_mle.py b/test/test_extreme_fit/test_estimator/test_gev_spatio_temporal_extremes_mle.py index f40099cb4227b4e05facf8f76a702b3b6e3e5b28..9220b1f587f2b968f92732170da129403aee56c1 100644 --- a/test/test_extreme_fit/test_estimator/test_gev_spatio_temporal_extremes_mle.py +++ b/test/test_extreme_fit/test_estimator/test_gev_spatio_temporal_extremes_mle.py @@ -4,9 +4,9 @@ from extreme_data.meteo_france_data.scm_models_data.safran.safran import SafranS from extreme_fit.model.margin_model.utils import \ MarginFitMethod from extreme_data.meteo_france_data.scm_models_data.altitudes_studies import AltitudesStudies -from projects.altitude_spatial_model.altitudes_fit.two_fold_analysis.two_fold_datasets_generator import \ +from extreme_trend.two_fold_analysis.two_fold_datasets_generator import \ TwoFoldDatasetsGenerator -from projects.altitude_spatial_model.altitudes_fit.two_fold_analysis.two_fold_fit import TwoFoldFit +from extreme_trend.two_fold_analysis.two_fold_fit import TwoFoldFit class TestGevTemporalQuadraticExtremesMle(unittest.TestCase): diff --git a/test/test_extreme_fit/test_function/test_param_function.py b/test/test_extreme_fit/test_function/test_param_function.py index 2604da08df8087481e8928b3af971809a39cd157..74051ff42f372e377c274615b31e4be75caf00c0 100644 --- a/test/test_extreme_fit/test_function/test_param_function.py +++ b/test/test_extreme_fit/test_function/test_param_function.py @@ -8,10 +8,10 @@ from extreme_fit.function.param_function.param_function import LinearParamFuncti class TestParamFunction(unittest.TestCase): - def test_out_of_bounds(self): - param_function = LinearParamFunction(dims=[0], coordinates=np.array([[0]]), linear_coef=LinearCoef()) - with self.assertRaises(AssertionError): - param_function.get_param_value(np.array([1.0])) + # def test_out_of_bounds(self): + # param_function = LinearParamFunction(dims=[0], coordinates=np.array([[0]]), linear_coef=LinearCoef()) + # with self.assertRaises(AssertionError): + # param_function.get_param_value(np.array([1.0])) def test_linear_param_function(self): linear_coef = LinearCoef(idx_to_coef={0: 1}) diff --git a/test/test_projects/test_altitude_spatial/test_one_fold_fit.py b/test/test_extreme_trend/test_one_fold_fit.py similarity index 96% rename from test/test_projects/test_altitude_spatial/test_one_fold_fit.py rename to test/test_extreme_trend/test_one_fold_fit.py index e7fa22d4c6b10557aca3e3924711bbd98811fb79..54d7c8b092aa49d465aa8000dd7f9c83f36d3bac 100644 --- a/test/test_projects/test_altitude_spatial/test_one_fold_fit.py +++ b/test/test_extreme_trend/test_one_fold_fit.py @@ -11,8 +11,8 @@ from extreme_fit.model.margin_model.polynomial_margin_model.models_based_on_pari from extreme_fit.model.margin_model.polynomial_margin_model.utils import \ ALTITUDINAL_GEV_MODELS_BASED_ON_POINTWISE_ANALYSIS from extreme_data.meteo_france_data.scm_models_data.altitudes_studies import AltitudesStudies -from projects.altitude_spatial_model.altitudes_fit.one_fold_analysis.altitude_group import VeyHighAltitudeGroup -from projects.altitude_spatial_model.altitudes_fit.one_fold_analysis.one_fold_fit import OneFoldFit +from extreme_trend.one_fold_analysis.altitude_group import VeyHighAltitudeGroup +from extreme_trend.one_fold_analysis.one_fold_fit import OneFoldFit from spatio_temporal_dataset.coordinates.temporal_coordinates.abstract_temporal_covariate_for_fit import \ TimeTemporalCovariate, AnomalyTemperatureTemporalCovariate diff --git a/test/test_projects/test_contrasting/test_two_fold_fit.py b/test/test_extreme_trend/test_two_fold_fit.py similarity index 59% rename from test/test_projects/test_contrasting/test_two_fold_fit.py rename to test/test_extreme_trend/test_two_fold_fit.py index f34e8c2856b61610041b3a6b5633f047b875f97e..3a9cc9198922007be08bc9fa56e3b827aea368f1 100644 --- a/test/test_projects/test_contrasting/test_two_fold_fit.py +++ b/test/test_extreme_trend/test_two_fold_fit.py @@ -2,15 +2,16 @@ import unittest import numpy as np +from extreme_data.meteo_france_data.scm_models_data.altitudes_studies import AltitudesStudies from extreme_data.meteo_france_data.scm_models_data.safran.safran import SafranSnowfall1Day from extreme_fit.model.margin_model.linear_margin_model.linear_margin_model import ConstantMarginModel from extreme_fit.model.margin_model.utils import MarginFitMethod from extreme_fit.model.utils import set_seed_for_test -from extreme_data.meteo_france_data.scm_models_data.altitudes_studies import AltitudesStudies -from projects.altitude_spatial_model.altitudes_fit.two_fold_analysis.two_fold_datasets_generator import TwoFoldDatasetsGenerator -from projects.altitude_spatial_model.altitudes_fit.two_fold_analysis.two_fold_detail_fit import TwoFoldModelFit -from projects.altitude_spatial_model.altitudes_fit.two_fold_analysis.two_fold_fit import TwoFoldFit -from projects.altitude_spatial_model.altitudes_fit.two_fold_analysis.utils import Score +from extreme_trend.two_fold_analysis.two_fold_datasets_generator import \ + TwoFoldDatasetsGenerator +from extreme_trend.two_fold_analysis.two_fold_detail_fit import TwoFoldModelFit +from extreme_trend.two_fold_analysis.two_fold_fit import TwoFoldFit +from extreme_trend.two_fold_analysis.utils import Score from spatio_temporal_dataset.slicer.split import Split @@ -48,6 +49,32 @@ class TestTwoFoldFit(unittest.TestCase): ConstantMarginModel] # type: TwoFoldModelFit self.assertEqual(232.1804953450304, model_fit.score(score=Score.NLLH_TEST)) +class TestTwoFoldDatasetsGenerator(unittest.TestCase): + + def setUp(self) -> None: + super().setUp() + altitudes = [900, 1200] + study_class = SafranSnowfall1Day + studies = AltitudesStudies(study_class, altitudes, year_min=1959, year_max=1963) + self.two_fold_estimation = TwoFoldDatasetsGenerator(studies, nb_samples=2) + + def test_dataset_sizes(self): + dataset1, dataset2 = self.two_fold_estimation.two_fold_datasets('Vercors') + np.testing.assert_equal(dataset1.maxima_gev(Split.train_temporal), dataset2.maxima_gev(Split.test_temporal)) + np.testing.assert_equal(dataset1.maxima_gev(Split.test_temporal), dataset2.maxima_gev(Split.train_temporal)) + + def test_crash(self): + dataset1, _ = self.two_fold_estimation.two_fold_datasets('Vercors') + with self.assertRaises(AssertionError): + dataset1.maxima_gev(split=Split.train_spatiotemporal) + with self.assertRaises(AssertionError): + dataset1.maxima_gev(split=Split.train_spatial) + + def test_temporal_steps(self): + dataset1, _ = self.two_fold_estimation.two_fold_datasets('Vercors') + self.assertEqual(len(dataset1.coordinates.df_temporal_coordinates(split=Split.train_temporal)), 2) + self.assertEqual(len(dataset1.coordinates.df_temporal_coordinates(split=Split.test_temporal)), 3) + if __name__ == '__main__': unittest.main() diff --git a/test/test_projects/test_contrasting/__init__.py b/test/test_projects/test_contrasting/__init__.py deleted file mode 100644 index e69de29bb2d1d6434b8b29ae775ad8c2e48c5391..0000000000000000000000000000000000000000 diff --git a/test/test_projects/test_contrasting/test_two_fold_datasets_generator.py b/test/test_projects/test_contrasting/test_two_fold_datasets_generator.py deleted file mode 100644 index 2a1e6e7c5464a0c24c249ef53c47ae35e981ba2b..0000000000000000000000000000000000000000 --- a/test/test_projects/test_contrasting/test_two_fold_datasets_generator.py +++ /dev/null @@ -1,38 +0,0 @@ -import unittest -import numpy as np - -from extreme_data.meteo_france_data.scm_models_data.safran.safran import SafranSnowfall1Day -from extreme_data.meteo_france_data.scm_models_data.altitudes_studies import AltitudesStudies -from projects.altitude_spatial_model.altitudes_fit.two_fold_analysis.two_fold_datasets_generator import TwoFoldDatasetsGenerator -from spatio_temporal_dataset.slicer.split import Split - - -class TestTwoFoldDatasetsGenerator(unittest.TestCase): - - def setUp(self) -> None: - super().setUp() - altitudes = [900, 1200] - study_class = SafranSnowfall1Day - studies = AltitudesStudies(study_class, altitudes, year_min=1959, year_max=1963) - self.two_fold_estimation = TwoFoldDatasetsGenerator(studies, nb_samples=2) - - def test_dataset_sizes(self): - dataset1, dataset2 = self.two_fold_estimation.two_fold_datasets('Vercors') - np.testing.assert_equal(dataset1.maxima_gev(Split.train_temporal), dataset2.maxima_gev(Split.test_temporal)) - np.testing.assert_equal(dataset1.maxima_gev(Split.test_temporal), dataset2.maxima_gev(Split.train_temporal)) - - def test_crash(self): - dataset1, _ = self.two_fold_estimation.two_fold_datasets('Vercors') - with self.assertRaises(AssertionError): - dataset1.maxima_gev(split=Split.train_spatiotemporal) - with self.assertRaises(AssertionError): - dataset1.maxima_gev(split=Split.train_spatial) - - def test_temporal_steps(self): - dataset1, _ = self.two_fold_estimation.two_fold_datasets('Vercors') - self.assertEqual(len(dataset1.coordinates.df_temporal_coordinates(split=Split.train_temporal)), 2) - self.assertEqual(len(dataset1.coordinates.df_temporal_coordinates(split=Split.test_temporal)), 3) - - -if __name__ == '__main__': - unittest.main()