From 43afeddb8e2b46d8ce5e3797d101dbee0c8e8679 Mon Sep 17 00:00:00 2001 From: Khalim Conn-Kowlessar Date: Thu, 7 Sep 2023 15:30:04 +0300 Subject: [PATCH] debugging epc cleaner --- model_data/epc_attributes/FloorAttributes.py | 3 ++- model_data/epc_attributes/MainheatControlAttributes.py | 10 ++++++++++ model_data/epc_attributes/RoofAttributes.py | 3 ++- .../test_mainheat_control_attributes_cases.py | 4 ++++ 4 files changed, 18 insertions(+), 2 deletions(-) diff --git a/model_data/epc_attributes/FloorAttributes.py b/model_data/epc_attributes/FloorAttributes.py index 71a8b5a8..938c3a22 100644 --- a/model_data/epc_attributes/FloorAttributes.py +++ b/model_data/epc_attributes/FloorAttributes.py @@ -14,7 +14,8 @@ class FloorAttributes(Definitions): WELSH_TEXT = { "(anheddiad arall islaw)": "(another dwelling below)", - "solet, dim inswleiddio (rhagdybiaeth)": "dolid, no insulation (assumed)" + "solet, dim inswleiddio (rhagdybiaeth)": "solid, no insulation (assumed)", + "crog, dim inswleiddio (rhagdybiaeth)": "suspended, no insulation (assumed)", } def __init__(self, description: str): diff --git a/model_data/epc_attributes/MainheatControlAttributes.py b/model_data/epc_attributes/MainheatControlAttributes.py index e1c3ed4f..d4282276 100644 --- a/model_data/epc_attributes/MainheatControlAttributes.py +++ b/model_data/epc_attributes/MainheatControlAttributes.py @@ -67,10 +67,20 @@ class MainheatControlAttributes(Definitions): 'at least two room thermostats' ] + # Sufficiently similar descriptions to be remapped + TO_REMAP = { + "celect control": 'celect-type control' + } + def __init__(self, description: str): self.description: str = clean_description(description.lower()) self.nodata = not description or description in self.DATA_ANOMALY_MATCHES + # Remap + remapped = self.TO_REMAP.get(self.description) + if remapped: + self.description = remapped + if not self.nodata: if not any( self._keyword_in_description(keywords) diff --git a/model_data/epc_attributes/RoofAttributes.py b/model_data/epc_attributes/RoofAttributes.py index 892217b6..db7321f8 100644 --- a/model_data/epc_attributes/RoofAttributes.py +++ b/model_data/epc_attributes/RoofAttributes.py @@ -10,7 +10,8 @@ class RoofAttributes(Definitions): WELSH_TEXT = { "ar oleddf, dim inswleiddio": "pitched, no insulation", - "ar oleddf, 150 mm o inswleiddio yn y llofft": "pitched, 150 mm loft insulation" + "ar oleddf, 150 mm o inswleiddio yn y llofft": "pitched, 150 mm loft insulation", + "ar oleddf, 300 mm o inswleiddio yn y llofft": "pitched, 300 mm loft insulation" } def __init__(self, description: str): diff --git a/model_data/tests/test_data/test_mainheat_control_attributes_cases.py b/model_data/tests/test_data/test_mainheat_control_attributes_cases.py index 9e2d20ac..4869ba1a 100644 --- a/model_data/tests/test_data/test_mainheat_control_attributes_cases.py +++ b/model_data/tests/test_data/test_mainheat_control_attributes_cases.py @@ -127,6 +127,10 @@ mainheat_control_cases = [ {'original_description': 'Celect-type controls', 'thermostatic_control': 'celect-type control', 'charging_system': None, 'switch_system': None, 'no_control': None, 'dhw_control': None, 'community_heating': None, 'multiple_room_thermostats': False, 'auxiliary_systems': None, + 'trvs': None}, + {'original_description': 'Celect controls', 'thermostatic_control': 'celect-type control', 'charging_system': None, + 'switch_system': None, 'no_control': None, + 'dhw_control': None, 'community_heating': None, 'multiple_room_thermostats': False, 'auxiliary_systems': None, 'trvs': None} ]