update enum variant value and add exception if not found + sort dates (#1)
This commit is contained in:
parent
fc7b84da28
commit
7ac6c5ff33
15
drees.py
15
drees.py
@ -66,15 +66,18 @@ class Quota(DreesEnum):
|
|||||||
|
|
||||||
|
|
||||||
class VacStatus(DreesEnum):
|
class VacStatus(DreesEnum):
|
||||||
|
"""
|
||||||
|
WARN: Be careful, after refreshing dataset, some VacStatus can changed
|
||||||
|
"""
|
||||||
NC = (0, "Non-vaccinés")
|
NC = (0, "Non-vaccinés")
|
||||||
PDR = (1, "Primo dose récente")
|
PDR = (1, "Primo dose récente")
|
||||||
PDE = (2, "Primo dose efficace")
|
PDE = (2, "Primo dose efficace")
|
||||||
CM3MSR = (3, "Complet de moins de 3 mois - sans rappel")
|
CM3MSR = (3, "Complet de moins de 3 mois - sans rappel")
|
||||||
CM3MAR = (4, "Complet de moins de 3 mois - avec rappel")
|
CM3MAR = (4, "Complet - avec rappel de moins de 3 mois")
|
||||||
CM36MSR = (5, "Complet entre 3 mois et 6 mois - sans rappel")
|
CM36MSR = (5, "Complet entre 3 mois et 6 mois - sans rappel")
|
||||||
CM36MAR = (6, "Complet entre 3 mois et 6 mois - avec rappel")
|
CM36MAR = (6, "Complet - avec rappel entre 3 mois et 6 mois")
|
||||||
C6MAR = (7, "Complet de 6 mois et plus - avec rappel")
|
C6MAR = (7, "Complet - avec rappel de 6 mois ou plus")
|
||||||
C6MSR = (8, "Complet de 6 mois et plus - sans rappel")
|
C6MSR = (8, "Complet de 6 mois ou plus - sans rappel")
|
||||||
|
|
||||||
|
|
||||||
class AgeGroup(DreesEnum):
|
class AgeGroup(DreesEnum):
|
||||||
@ -124,12 +127,14 @@ def get_enum_vac_status(value):
|
|||||||
for vac_status in VacStatus:
|
for vac_status in VacStatus:
|
||||||
if vac_status.label == value:
|
if vac_status.label == value:
|
||||||
return vac_status.value
|
return vac_status.value
|
||||||
|
raise Exception(f"vac status : {value} does not exit in enum 'VacStatus'")
|
||||||
|
|
||||||
|
|
||||||
def get_enum_age(value):
|
def get_enum_age(value):
|
||||||
for age_group in AgeGroup:
|
for age_group in AgeGroup:
|
||||||
if age_group.label == value:
|
if age_group.label == value:
|
||||||
return age_group.value
|
return age_group.value
|
||||||
|
raise Exception(f"age : {value} does not exit in enum 'AgeGroup'")
|
||||||
|
|
||||||
|
|
||||||
def get_enum_field(value):
|
def get_enum_field(value):
|
||||||
@ -139,6 +144,7 @@ def get_enum_field(value):
|
|||||||
for quota in Quota:
|
for quota in Quota:
|
||||||
if quota.name.lower() == value:
|
if quota.name.lower() == value:
|
||||||
return quota.value
|
return quota.value
|
||||||
|
raise Exception(f"field : {value} does not exit in enum 'Field'")
|
||||||
|
|
||||||
|
|
||||||
def structure_data(data: Dict[str, Any]) -> Dict[dt, Any]:
|
def structure_data(data: Dict[str, Any]) -> Dict[dt, Any]:
|
||||||
@ -197,6 +203,7 @@ def get_np_data(dic_data: Dict[dt, Any]) -> Tuple[np.ndarray, np.ndarray]:
|
|||||||
idx_field = get_enum_field(field)
|
idx_field = get_enum_field(field)
|
||||||
np_data[idx_date, idx_age, idx_vac, idx_field] = value
|
np_data[idx_date, idx_age, idx_vac, idx_field] = value
|
||||||
logging.info("date and data generated")
|
logging.info("date and data generated")
|
||||||
|
np_date = np.array(sorted(np_date))
|
||||||
date_start = np_date[0]
|
date_start = np_date[0]
|
||||||
date_end = np_date[len(np_date) - 1]
|
date_end = np_date[len(np_date) - 1]
|
||||||
logging.info(f"range period : {date_start} - {date_end}")
|
logging.info(f"range period : {date_start} - {date_end}")
|
||||||
|
|||||||
Loading…
x
Reference in New Issue
Block a user