Skip to content

Commit 2af6ade

Browse files
authored
Improve rent uprating by tenure (#1646)
* Improve rent uprating by tenure * Preserve aggregate rent growth in forecasts * Format rent uprating test
1 parent 32f1bf1 commit 2af6ade

3 files changed

Lines changed: 264 additions & 103 deletions

File tree

policyengine_uk/data/economic_assumptions.py

Lines changed: 2 additions & 24 deletions
Original file line numberDiff line numberDiff line change
@@ -174,32 +174,10 @@ def uprate_rent(
174174
"Rent uprating is not supported for years before 2022. Not applying uprating."
175175
)
176176
pass
177-
elif year < 2025:
178-
# We have regional growth rates for private rent.
179-
regional_growth_rate = growth.ons.private_rental_prices(year)[
177+
else:
178+
private_rent_growth = growth.ons.private_rental_prices(year)[
180179
np.array(region.values.astype(str))
181180
]
182-
current_year.household["rent"] = np.where(
183-
is_private_rented,
184-
prev_rent * (1 + regional_growth_rate),
185-
prev_rent * (1 + social_rent_growth),
186-
)
187-
elif year >= 2025:
188-
# Back out private rent growth from the aggregate
189-
# from latest English Housing Survey data
190-
PRIVATE_RENTAL_HOUSEHOLDS = 0.188
191-
SOCIAL_RENTAL_HOUSEHOLDS = 0.164
192-
193-
total_rental_households = PRIVATE_RENTAL_HOUSEHOLDS + SOCIAL_RENTAL_HOUSEHOLDS
194-
195-
private_weight = PRIVATE_RENTAL_HOUSEHOLDS / total_rental_households
196-
social_weight = SOCIAL_RENTAL_HOUSEHOLDS / total_rental_households
197-
198-
aggregate_growth = growth.obr.rent(year)
199-
private_rent_growth = (
200-
aggregate_growth - social_weight * social_rent_growth
201-
) / private_weight
202-
203181
current_year.household["rent"] = np.where(
204182
is_private_rented,
205183
prev_rent * (1 + private_rent_growth),

0 commit comments

Comments
 (0)