From 6c07a290e751461bfe59eb7f07fa00e0165b6813 Mon Sep 17 00:00:00 2001 From: Khalim Conn-Kowlessar Date: Tue, 9 Jul 2024 16:00:36 +0100 Subject: [PATCH] Adding back in potential columns --- etl/epc/Pipeline.py | 18 ++++++++++----- etl/epc/Record.py | 56 ++++++++++++++++++++++----------------------- 2 files changed, 40 insertions(+), 34 deletions(-) diff --git a/etl/epc/Pipeline.py b/etl/epc/Pipeline.py index bc3bfd91..0601d6ec 100644 --- a/etl/epc/Pipeline.py +++ b/etl/epc/Pipeline.py @@ -40,7 +40,7 @@ VARIABLE_DATA_FEATURES = ( COMPONENT_FEATURES + ROOM_FEATURES + EFFICIENCY_FEATURES - # + POTENTIAL_COLUMNS + + POTENTIAL_COLUMNS + ["lodgement_date", RDSAP_RESPONSE, HEAT_DEMAND_RESPONSE, CARBON_RESPONSE] ) COST_FEATURES = [x.lower() for x in COST_FEATURES] @@ -288,9 +288,11 @@ class EPCPipeline: for x in variable_data.to_dict(orient="records") ] - # TODO: We want to be able to provide value for the u values in the main pipeline so this will need to be part of the EPCRecord + # TODO: We want to be able to provide value for the u values in the main pipeline so this will need to be + # part of the EPCRecord - # We can use multiple types of comparison datasets - i.e. Compare consecutive records, or compare all permutations of records + # We can use multiple types of comparison datasets - i.e. Compare consecutive records, or compare all + # permutations of records property_difference_records = self._generate_property_difference_records( epc_records, uprn, directory, fixed_data ) @@ -311,7 +313,8 @@ class EPCPipeline: property_difference_records: list = [] - # property_difference_records = self._compare_consecutive_epcs(epc_records, uprn, directory, fixed_data, property_difference_records) + # property_difference_records = self._compare_consecutive_epcs(epc_records, uprn, directory, fixed_data, + # property_difference_records) property_difference_records = self._compare_all_permutation_epcs( epc_records, uprn, directory, fixed_data, property_difference_records @@ -353,7 +356,9 @@ class EPCPipeline: if not difference_record.ensure_adequate_data(): # Rdsap hasn't changed but we have enough data to use this record # i.e. all fields aside from mechnical ventilation are the same] - # self.check_records.append({"uprn": uprn, "directory_name": directory.name, "difference_record": difference_record, "earliest_record": earliest_record, "latest_record": latest_record}) + # self.check_records.append({"uprn": uprn, "directory_name": directory.name, + # "difference_record": difference_record, "earliest_record": earliest_record, + # "latest_record": latest_record}) continue all_equal = difference_record.compare_fields_in_records( @@ -402,7 +407,8 @@ class EPCPipeline: if not difference_record.ensure_adequate_data(): # Rdsap hasn't changed but we have enough data to use this record # i.e. all fields aside from mechnical ventilation are the same] - # self.check_records.append({"uprn": uprn, "directory_name": directory.name, "difference_record": difference_record, "earliest_record": earliest_record, "latest_record": latest_record}) + # self.check_records.append({"uprn": uprn, "directory_name": directory.name, "difference_record": + # difference_record, "earliest_record": earliest_record, "latest_record": latest_record}) continue all_equal = difference_record.compare_fields_in_records( diff --git a/etl/epc/Record.py b/etl/epc/Record.py index b8471ccf..cc70d42b 100644 --- a/etl/epc/Record.py +++ b/etl/epc/Record.py @@ -79,10 +79,10 @@ class EPCRecord: lighting_cost_current: float = None heating_cost_current: float = None hot_water_cost_current: float = None - # potential_energy_efficiency: float = None - # environment_impact_potential: float = None - # energy_consumption_potential: float = None - # co2_emissions_potential: float = None + potential_energy_efficiency: float = None + environment_impact_potential: float = None + energy_consumption_potential: float = None + co2_emissions_potential: float = None lodgement_date: str = None current_energy_efficiency: int = None energy_consumption_current: int = None @@ -255,18 +255,18 @@ class EPCRecord: self.lighting_cost_current: float = self.prepared_epc["lighting_cost_current"] self.heating_cost_current: float = self.prepared_epc["heating_cost_current"] self.hot_water_cost_current: float = self.prepared_epc["hot_water_cost_current"] - # self.potential_energy_efficiency: float = float( - # self.prepared_epc["potential_energy_efficiency"] - # ) - # self.environment_impact_potential: float = float( - # self.prepared_epc["environment_impact_potential"] - # ) - # self.energy_consumption_potential: float = float( - # self.prepared_epc["energy_consumption_potential"] - # ) - # self.co2_emissions_potential: float = float( - # self.prepared_epc["co2_emissions_potential"] - # ) + self.potential_energy_efficiency: float = float( + self.prepared_epc["potential_energy_efficiency"] + ) + self.environment_impact_potential: float = float( + self.prepared_epc["environment_impact_potential"] + ) + self.energy_consumption_potential: float = float( + self.prepared_epc["energy_consumption_potential"] + ) + self.co2_emissions_potential: float = float( + self.prepared_epc["co2_emissions_potential"] + ) self.lodgement_date: str = self.prepared_epc["lodgement_date"] self.current_energy_efficiency: int = int( self.prepared_epc["current_energy_efficiency"] @@ -1056,18 +1056,18 @@ class EPCDifferenceRecord: "heating_cost_ending": self.record2.get("heating_cost_current"), "hot_water_cost_starting": self.record1.get("hot_water_cost_current"), "hot_water_cost_ending": self.record2.get("hot_water_cost_current"), - # "potential_energy_efficiency": self.earliest_record.get( - # "potential_energy_efficiency" - # ), - # "environment_impact_potential": self.earliest_record.get( - # "environment_impact_potential" - # ), - # "energy_consumption_potential": self.earliest_record.get( - # "energy_consumption_potential" - # ), - # "co2_emissions_potential": self.earliest_record.get( - # "co2_emissions_potential" - # ), + "potential_energy_efficiency": self.earliest_record.get( + "potential_energy_efficiency" + ), + "environment_impact_potential": self.earliest_record.get( + "environment_impact_potential" + ), + "energy_consumption_potential": self.earliest_record.get( + "energy_consumption_potential" + ), + "co2_emissions_potential": self.earliest_record.get( + "co2_emissions_potential" + ), **ending_record, **starting_record, }