class GevParams(object): GEV_SCALE = 'scale' GEV_LOC = 'loc' GEV_SHAPE = 'shape' def __init__(self, loc: float, scale: float, shape: float): self.location = loc self.scale = scale self.shape = shape @classmethod def from_dict(cls, params: dict): return cls(**params) def to_dict(self) -> dict: return { self.GEV_LOC: self.location, self.GEV_SCALE: self.scale, self.GEV_SHAPE: self.shape, } def rgev(self, nb_obs): gev_params = { self.GEV_LOC: loc, self.GEV_SCALE: scale, self.GEV_SHAPE: shape, } return self.r.rgev(nb_obs, **gev_params)