Commit 07c0cb82 authored by Le Roux Erwan's avatar Le Roux Erwan
Browse files

Add AlpsCoordinates

parent 38b2bd8a
No related merge requests found
Showing with 67 additions and 10 deletions
+67 -10
class AbstractEstimator(object):
pass
\ No newline at end of file
def __init__(self):
pass
def fit(self):
pass
def error(self):
pass
\ No newline at end of file
......@@ -5,7 +5,7 @@ from extreme_estimator.R_fit.max_stable_fit.max_stable_models import GaussianMSP
from itertools import product
from spatio_temporal_dataset.dataset.simulation_dataset import SimulatedDataset
from spatio_temporal_dataset.spatial_coordinates.generated_coordinate import CircleCoordinates
from spatio_temporal_dataset.spatial_coordinates.generated_coordinates import CircleCoordinates
import matplotlib.pyplot as plt
plt.style.use('seaborn-white')
......@@ -82,7 +82,6 @@ class AbstractRobustnessPlot(object):
@staticmethod
def estimation_error_max_stable_unitary_frechet(**kwargs_single_points):
# Get the argument from kwargs
print(kwargs_single_points)
max_stable_model = MaxStableModelItem.value_from_kwargs(**kwargs_single_points)
spatial_coordinate_class = SpatialCoordinateClassItem.value_from_kwargs(**kwargs_single_points)
nb_station = NbStationItem.value_from_kwargs(**kwargs_single_points)
......
from extreme_estimator.R_fit.max_stable_fit.max_stable_models import GaussianMSP, BrownResick
from extreme_estimator.robustness_plot.abstract_robustness import DisplayItem, AbstractRobustnessPlot, \
SpatialCoordinateClassItem, NbObservationItem, NbStationItem, MaxStableModelItem, SpatialParamsItem
from spatio_temporal_dataset.spatial_coordinates.generated_coordinate import CircleCoordinates
from spatio_temporal_dataset.spatial_coordinates.generated_coordinates import CircleCoordinates
spatial_robustness = AbstractRobustnessPlot(grid_row_item=SpatialCoordinateClassItem,
grid_column_item=NbObservationItem,
......@@ -10,6 +10,7 @@ spatial_robustness = AbstractRobustnessPlot(grid_row_item=SpatialCoordinateClass
# Put only the parameter that will vary
spatial_robustness.robustness_grid_plot(**{
NbStationItem.argument_name: [10, 20, 30, 40, 50],
MaxStableModelItem.argument_name: [GaussianMSP(), BrownResick()][:]
NbStationItem.argument_name: [10, 30, 50, 100],
MaxStableModelItem.argument_name: [GaussianMSP(), BrownResick()][:],
NbObservationItem.argument_name: [10, 50, 100]
})
......@@ -2,7 +2,7 @@ import os
import os.path as op
import pandas as pd
from spatio_temporal_dataset.temporal_maxima.temporal_maxima import TemporalMaxima
from spatio_temporal_dataset.spatial_coordinates.abstract_coordinate import AbstractSpatialCoordinates
from spatio_temporal_dataset.spatial_coordinates.abstract_coordinates import AbstractSpatialCoordinates
class AbstractDataset(object):
......
......@@ -2,8 +2,8 @@ from extreme_estimator.R_fit.max_stable_fit.max_stable_models import MaxStableMo
import pandas as pd
from spatio_temporal_dataset.dataset.abstract_dataset import AbstractDataset
from spatio_temporal_dataset.temporal_maxima.temporal_maxima import TemporalMaxima
from spatio_temporal_dataset.spatial_coordinates.abstract_coordinate import AbstractSpatialCoordinates
from spatio_temporal_dataset.spatial_coordinates.generated_coordinate import CircleCoordinates
from spatio_temporal_dataset.spatial_coordinates.abstract_coordinates import AbstractSpatialCoordinates
from spatio_temporal_dataset.spatial_coordinates.generated_coordinates import CircleCoordinates
class SimulatedDataset(AbstractDataset):
......
......@@ -9,6 +9,7 @@ class AbstractSpatialCoordinates(object):
COORD_X = 'coord_x'
COORD_Y = 'coord_y'
COORD_SPLIT = 'coord_split'
COOR_ID = 'coord_id'
# Constants
TRAIN_SPLIT_STR = 'train_split'
TEST_SPLIT_STR = 'test_split'
......
import pandas as pd
import os.path as op
from spatio_temporal_dataset.spatial_coordinates.abstract_coordinates import AbstractSpatialCoordinates
from utils import get_full_path
class AlpsStationCoordinate(AbstractSpatialCoordinates):
RELATIVE_PATH = r'local/spatio_temporal_datasets/Gilles - precipitations'
FULL_PATH = get_full_path(relative_path=RELATIVE_PATH)
@classmethod
def from_csv(cls, csv_file='coord-lambert2'):
csv_path = op.join(cls.FULL_PATH, csv_file + '.csv')
return super().from_csv(csv_path)
@classmethod
def transform_txt_into_csv(cls):
filepath = op.join(cls.FULL_PATH, 'original data', 'coord-lambert2.txt')
station_to_coordinates = {}
with open(filepath, 'r') as f:
for l in f:
_, station_name, coordinates = l.split('"')
coordinates = coordinates.split()
assert len(coordinates) == 3
station_to_coordinates[station_name] = coordinates
df = pd.DataFrame.from_dict(data=station_to_coordinates, orient='index',
columns=[cls.COORD_X, cls.COORD_Y, cls.COOR_ID])
df.to_csv(op.join(cls.FULL_PATH, 'coord-lambert2.csv'))
print(df.head())
print(df.index)
if __name__ == '__main__':
# AlpsStationCoordinate.transform_txt_into_csv()
coord = AlpsStationCoordinate.from_csv()
coord.visualization()
......@@ -3,7 +3,7 @@ import numpy as np
import pandas as pd
from extreme_estimator.R_fit.utils import get_loaded_r
from spatio_temporal_dataset.spatial_coordinates.abstract_coordinate import AbstractSpatialCoordinates
from spatio_temporal_dataset.spatial_coordinates.abstract_coordinates import AbstractSpatialCoordinates
import matplotlib.pyplot as plt
......
utils.py 0 → 100644
import os
import os.path as op
def get_root_path() -> str:
return os.path.dirname(os.path.abspath(__file__))
def get_full_path(relative_path: str) -> str:
return op.join(get_root_path(), relative_path)
Supports Markdown
0% or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment