mirror of
https://github.com/Hestia-Homes/Model.git
synced 2026-06-30 13:10:47 +00:00
Adding HA16
This commit is contained in:
parent
2a4d16162a
commit
9ca6c179bc
1 changed files with 135 additions and 4 deletions
|
|
@ -128,6 +128,10 @@ class DataLoader:
|
||||||
"HA6": {
|
"HA6": {
|
||||||
"address": "propertyaddress",
|
"address": "propertyaddress",
|
||||||
"postcode": "address" # The 'address' column actually contains postcode
|
"postcode": "address" # The 'address' column actually contains postcode
|
||||||
|
},
|
||||||
|
"HA16": {
|
||||||
|
"address": "Address",
|
||||||
|
"postcode": "Postcode"
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
@ -135,9 +139,10 @@ class DataLoader:
|
||||||
# We expect 4 unmatched addresses, which have been validated manually as being in the ciga file but not
|
# We expect 4 unmatched addresses, which have been validated manually as being in the ciga file but not
|
||||||
# the asset list
|
# the asset list
|
||||||
"HA14": 3,
|
"HA14": 3,
|
||||||
|
"HA16": 7,
|
||||||
# There's just too many unmatched here
|
# There's just too many unmatched here
|
||||||
"HA6": 117,
|
"HA6": 117,
|
||||||
"HA107": 51
|
"HA107": 51,
|
||||||
}
|
}
|
||||||
|
|
||||||
def __init__(self, directories, december_figures_filepath, use_cache):
|
def __init__(self, directories, december_figures_filepath, use_cache):
|
||||||
|
|
@ -151,7 +156,7 @@ class DataLoader:
|
||||||
|
|
||||||
def create_asset_list_matching_address(self, ha_name, asset_list):
|
def create_asset_list_matching_address(self, ha_name, asset_list):
|
||||||
|
|
||||||
if ha_name in ["HA1", "HA6"]:
|
if ha_name in ["HA1", "HA6", "HA16"]:
|
||||||
asset_list["matching_address"] = asset_list[
|
asset_list["matching_address"] = asset_list[
|
||||||
self.COLUMN_CONFIG[ha_name]["address"]
|
self.COLUMN_CONFIG[ha_name]["address"]
|
||||||
].str.lower().str.strip()
|
].str.lower().str.strip()
|
||||||
|
|
@ -173,6 +178,7 @@ class DataLoader:
|
||||||
asset_list["Address 4"].str.lower().str.strip() + ", " + \
|
asset_list["Address 4"].str.lower().str.strip() + ", " + \
|
||||||
asset_list["Postcode"].str.lower().str.strip()
|
asset_list["Postcode"].str.lower().str.strip()
|
||||||
asset_list["matching_postcode"] = asset_list["Postcode"].str.lower().str.strip()
|
asset_list["matching_postcode"] = asset_list["Postcode"].str.lower().str.strip()
|
||||||
|
|
||||||
elif ha_name == "HA39":
|
elif ha_name == "HA39":
|
||||||
# Create matching_address by concatenating add_1, add_2, add_3, add_4, add_5, post_code
|
# Create matching_address by concatenating add_1, add_2, add_3, add_4, add_5, post_code
|
||||||
asset_list["matching_address"] = asset_list["add_1"].astype(str).str.lower().str.strip() + ", " + \
|
asset_list["matching_address"] = asset_list["add_1"].astype(str).str.lower().str.strip() + ", " + \
|
||||||
|
|
@ -234,7 +240,7 @@ class DataLoader:
|
||||||
:return:
|
:return:
|
||||||
"""
|
"""
|
||||||
|
|
||||||
if ha_name in ["HA6", "HA14", "HA107"]:
|
if ha_name in ["HA6", "HA14", "HA107", "HA16"]:
|
||||||
split_addresses = ciga_list['Matched Address'].str.split(',', expand=True)
|
split_addresses = ciga_list['Matched Address'].str.split(',', expand=True)
|
||||||
house_numbers = split_addresses[0].str.split(' ', expand=True)
|
house_numbers = split_addresses[0].str.split(' ', expand=True)
|
||||||
# THe first column should be HouseNo - we aren't interested in the other columns, but we don't know how
|
# THe first column should be HouseNo - we aren't interested in the other columns, but we don't know how
|
||||||
|
|
@ -556,6 +562,129 @@ class DataLoader:
|
||||||
|
|
||||||
return survey_list
|
return survey_list
|
||||||
|
|
||||||
|
@staticmethod
|
||||||
|
def correct_ha16_survey_list(survey_list):
|
||||||
|
survey_list["Street / Block Name"] = survey_list["Street / Block Name"].str.replace("/", ", ")
|
||||||
|
survey_list["Street / Block Name"] = survey_list["Street / Block Name"].str.lower()
|
||||||
|
survey_list["Street / Block Name"] = np.where(
|
||||||
|
survey_list["Street / Block Name"] == "REEDS RD",
|
||||||
|
"Reeds ROAD",
|
||||||
|
survey_list["Street / Block Name"]
|
||||||
|
)
|
||||||
|
# Replace " rd " with "road"
|
||||||
|
survey_list['Street / Block Name'] = survey_list['Street / Block Name'].str.replace(r'\brd\b', 'road',
|
||||||
|
regex=True)
|
||||||
|
|
||||||
|
# Replace " , " with ", "
|
||||||
|
survey_list['Street / Block Name'] = survey_list['Street / Block Name'].str.replace(
|
||||||
|
" , ", ', ',
|
||||||
|
)
|
||||||
|
# Fix "{place} ,{place}" with "{place}, {place}"
|
||||||
|
survey_list['Street / Block Name'] = survey_list['Street / Block Name'].str.replace(r'\s*,\s*', ', ',
|
||||||
|
regex=True)
|
||||||
|
# Strip whitespace
|
||||||
|
survey_list['Street / Block Name'] = survey_list['Street / Block Name'].str.strip()
|
||||||
|
|
||||||
|
# Correct errors
|
||||||
|
survey_list["Post Code"] = np.where(
|
||||||
|
survey_list["Post Code"] == "M38 0SA",
|
||||||
|
"M38 9SA",
|
||||||
|
survey_list["Post Code"]
|
||||||
|
)
|
||||||
|
|
||||||
|
survey_list["Post Code"] = np.where(
|
||||||
|
(survey_list["Street / Block Name"] == "nelson drive") & (survey_list["Post Code"] == "M44 5JE"),
|
||||||
|
"M44 5JF",
|
||||||
|
survey_list["Post Code"]
|
||||||
|
)
|
||||||
|
|
||||||
|
survey_list["Street / Block Name"] = survey_list["Street / Block Name"].str.replace("eccels", "eccles")
|
||||||
|
survey_list["Street / Block Name"] = survey_list["Street / Block Name"].str.replace("chatley, road",
|
||||||
|
"chatley road")
|
||||||
|
survey_list["Street / Block Name"] = survey_list["Street / Block Name"].str.replace("vaughen", "Vaughan")
|
||||||
|
survey_list["Street / Block Name"] = survey_list["Street / Block Name"].str.replace("cresent", "crescent")
|
||||||
|
survey_list["Street / Block Name"] = survey_list["Street / Block Name"].str.replace("plantation road",
|
||||||
|
"plantation avenue")
|
||||||
|
survey_list["Street / Block Name"] = survey_list["Street / Block Name"].str.replace("how clough drive",
|
||||||
|
"howclough drive")
|
||||||
|
survey_list["Street / Block Name"] = survey_list["Street / Block Name"].str.replace("brockhurst lane",
|
||||||
|
"brookhurst lane")
|
||||||
|
survey_list["Street / Block Name"] = survey_list["Street / Block Name"].str.replace("biirch road",
|
||||||
|
"birch road")
|
||||||
|
survey_list["Street / Block Name"] = survey_list["Street / Block Name"].str.replace("hadson road",
|
||||||
|
"hodson road")
|
||||||
|
survey_list["Street / Block Name"] = survey_list["Street / Block Name"].str.replace("harbonne avennue",
|
||||||
|
"narbonne avenue")
|
||||||
|
survey_list["Street / Block Name"] = survey_list["Street / Block Name"].str.replace(
|
||||||
|
"cumberland road, cadishead",
|
||||||
|
"cumberland avenue, cadishead")
|
||||||
|
survey_list["Street / Block Name"] = survey_list["Street / Block Name"].str.replace("aston field drive",
|
||||||
|
"ashton field drive")
|
||||||
|
survey_list["Street / Block Name"] = survey_list["Street / Block Name"].str.replace("wedgewood road",
|
||||||
|
"wedgwood road")
|
||||||
|
survey_list["Street / Block Name"] = survey_list["Street / Block Name"].str.replace("hamilton close",
|
||||||
|
"hamilton avenue")
|
||||||
|
survey_list["Street / Block Name"] = survey_list["Street / Block Name"].str.replace(
|
||||||
|
"lichens crescent, fitton hill",
|
||||||
|
"lichens crescent")
|
||||||
|
survey_list["Street / Block Name"] = survey_list["Street / Block Name"].str.replace("south croft, fitton hill",
|
||||||
|
"south croft")
|
||||||
|
survey_list["Street / Block Name"] = survey_list["Street / Block Name"].str.replace(", fitton hill", "")
|
||||||
|
survey_list["Street / Block Name"] = survey_list["Street / Block Name"].str.replace("firtree dr",
|
||||||
|
"fir tree avenue")
|
||||||
|
survey_list["Street / Block Name"] = survey_list["Street / Block Name"].str.replace("hawthorne road",
|
||||||
|
"hawthorn crescent")
|
||||||
|
survey_list["Street / Block Name"] = survey_list["Street / Block Name"].str.replace("rein lee avenue",
|
||||||
|
"reins lee avenue")
|
||||||
|
survey_list["Street / Block Name"] = survey_list["Street / Block Name"].str.replace("westerhill road",
|
||||||
|
"wester hill road")
|
||||||
|
survey_list["Street / Block Name"] = survey_list["Street / Block Name"].str.replace("st martins road",
|
||||||
|
"saint martins road")
|
||||||
|
survey_list["Street / Block Name"] = survey_list["Street / Block Name"].str.replace("timperley avenue",
|
||||||
|
"timperley close")
|
||||||
|
survey_list["Street / Block Name"] = survey_list["Street / Block Name"].str.replace("eastwood road",
|
||||||
|
"eastwood avenue")
|
||||||
|
survey_list["Street / Block Name"] = survey_list["Street / Block Name"].str.replace("new road", "new street")
|
||||||
|
survey_list["Street / Block Name"] = survey_list["Street / Block Name"].str.replace("grassmere road",
|
||||||
|
"grasmere road")
|
||||||
|
survey_list["Street / Block Name"] = survey_list["Street / Block Name"].str.replace("hulton road",
|
||||||
|
"hulton avenue")
|
||||||
|
survey_list["Street / Block Name"] = survey_list["Street / Block Name"].str.replace("beechfield avenue",
|
||||||
|
"beechfield road")
|
||||||
|
survey_list["Street / Block Name"] = survey_list["Street / Block Name"].str.replace("princess avenue",
|
||||||
|
"princes avenue")
|
||||||
|
survey_list["Street / Block Name"] = survey_list["Street / Block Name"].str.replace("edge ford crecent",
|
||||||
|
"edge fold crescent")
|
||||||
|
survey_list["Street / Block Name"] = survey_list["Street / Block Name"].str.replace("conniston avenue",
|
||||||
|
"coniston avenue")
|
||||||
|
survey_list["Street / Block Name"] = survey_list["Street / Block Name"].str.replace("blackthorne crescent",
|
||||||
|
"blackthorn crescent")
|
||||||
|
survey_list["Street / Block Name"] = survey_list["Street / Block Name"].str.replace("wellstock road",
|
||||||
|
"wellstock lane")
|
||||||
|
survey_list["Street / Block Name"] = survey_list["Street / Block Name"].str.replace("brackley avenue",
|
||||||
|
"brackley street")
|
||||||
|
survey_list["Street / Block Name"] = survey_list["Street / Block Name"].str.replace("brook avenue swinton",
|
||||||
|
"brook avenue, swinton")
|
||||||
|
survey_list["Street / Block Name"] = survey_list["Street / Block Name"].str.replace("green avenue swinton",
|
||||||
|
"green avenue, swinton")
|
||||||
|
survey_list["Street / Block Name"] = survey_list["Street / Block Name"].str.replace("grasmere avenue wardley",
|
||||||
|
"grasmere avenue, wardley")
|
||||||
|
survey_list["Street / Block Name"] = survey_list["Street / Block Name"].str.replace("mardale avenue wardle",
|
||||||
|
"mardale avenue, wardle")
|
||||||
|
survey_list["Street / Block Name"] = survey_list["Street / Block Name"].str.replace("carleach grove",
|
||||||
|
"cartleach Grove")
|
||||||
|
survey_list["Street / Block Name"] = survey_list["Street / Block Name"].str.replace("arbour grove",
|
||||||
|
"arbor Grove")
|
||||||
|
|
||||||
|
# Replacement for clively avenue 66-68
|
||||||
|
survey_list["NO."] = np.where(
|
||||||
|
survey_list["NO."] == "66-68",
|
||||||
|
"66",
|
||||||
|
survey_list["NO."]
|
||||||
|
)
|
||||||
|
|
||||||
|
return survey_list
|
||||||
|
|
||||||
@staticmethod
|
@staticmethod
|
||||||
def correct_ha107_survey_list(survey_list):
|
def correct_ha107_survey_list(survey_list):
|
||||||
# Replace Front Street, East Stockham with Front Street, East Stockwith
|
# Replace Front Street, East Stockham with Front Street, East Stockwith
|
||||||
|
|
@ -898,6 +1027,8 @@ class DataLoader:
|
||||||
scheme_map = {
|
scheme_map = {
|
||||||
"ECO4": "ECO4",
|
"ECO4": "ECO4",
|
||||||
"AFFORDABLE WARMTH": "ECO4",
|
"AFFORDABLE WARMTH": "ECO4",
|
||||||
|
"ECO4 A/W": "ECO4",
|
||||||
|
"ECO4 GBIS (ECO+)": "GBIS"
|
||||||
}
|
}
|
||||||
|
|
||||||
eco_eligibility_map = {
|
eco_eligibility_map = {
|
||||||
|
|
@ -1908,7 +2039,7 @@ def app():
|
||||||
# Grab the December HA figures filepath
|
# Grab the December HA figures filepath
|
||||||
december_figures_filepath = "local_data/ha_data/HA_December_figures.csv"
|
december_figures_filepath = "local_data/ha_data/HA_December_figures.csv"
|
||||||
|
|
||||||
priority_has = ["HA1", "HA6", "HA7", "HA14", "HA39", "HA107"]
|
priority_has = ["HA1", "HA6", "HA7", "HA14", "HA16", "HA39", "HA107"]
|
||||||
# Filter down the directories to only the priority HAs
|
# Filter down the directories to only the priority HAs
|
||||||
directories = [d for d in directories if d.split("/")[2] in priority_has]
|
directories = [d for d in directories if d.split("/")[2] in priority_has]
|
||||||
|
|
||||||
|
|
|
||||||
Loading…
Add table
Reference in a new issue