1,770
views
0
recommends
+1 Recommend
1 collections
3
shares

### Special series and calls for papers

See all the current UCL Open: Environment calls for papers at https://ucl-about.scienceopen.com/calls-for-papers

#### UCL Open Environment

• Record: found
• Abstract: found
• Article: found
Is Open Access

# A new attribute-linked residential property price dataset for England and Wales, 2011–2019

research-article
1 , * , 1 , 1 , 1
UCL Open Environment
UCL Press
Bookmark

### Abstract

Current research on residential house price variation in the UK is limited by the lack of an open and comprehensive house price database that contains both transaction price alongside dwelling attributes such as size. This research outlines one approach which addresses this deficiency in England and Wales through combining transaction information from the official open Land Registry Price Paid Data (LR-PPD) and property size information from the official open Domestic Energy Performance Certificates (EPCs). A four-stage data linkage is created to generate a new linked dataset, representing 79% of the full market sales in the LR-PPD. This new linked dataset offers greater flexibility for the exploration of house price (£/m2) variation in England and Wales at different scales over postcode units between 2011 and 2019. Open access linkage codes will allow for future updates beyond 2019.

### Main article text

#### Introduction

Comparative international analyses of house prices are constrained by differences in definition, data structure, spatial/time scales and coverage. These limit both comparative analysis and within-country analysis of housing markets [1,2]. House price data deficiencies hinder research on residential house price variation in the UK, and limit understanding of the housing market. Modelling of UK-based house price changes dates back to the 1970s [3,4] with much of the data used either aggregated to coarse geographies such as regions or districts or, conversely, associated with individual properties in a specific city. Aggregate sample mortgage data, mainly from building societies, such as the 5% sample survey of Building Society Mortgages and the Nationwide Building Society mortgage data, have been widely used [513]. These datasets lack local nuance but are also problematic due to the potential biases inherent in small samples [14,15]. Conversely, more detailed micro-level housing data such as the local estate agent survey data used by Orford [16] have offered opportunities for local housing analysis, but such datasets are not widely available.

Land Registry Price Paid Data (LR-PPD) have been published as open data since 2013. These data have been transformative for house price variation research in the UK [1720] as they are a comprehensive record of residential transactions at address level in England and Wales dating back to 1995 [21]. Although the Land Registry excludes some types of residential property sales (e.g. ‘Right to buy’ sales at a discount), these data still provide the most accurate picture of residential property sales at full market value in England and Wales [22]. The Office for National Statistics (ONS) has used the LR-PPD to calculate official house price statistics such as the House Price Statistics for Small Areas dataset [23] and the official House Price Index [24]. Despite the utility of these data a lack of attribute information relating to the properties, such as total floor size information, is identified as one of the major shortcomings, as the impacts of stock mix on broader patterns cannot be fully accounted for [12,25].

As total floor area is identified as the most important determinant of house price variation [2528], two approaches have been developed in the UK to enhance the LR-PPD by adding total floor area. The first approach, created by Orford [25], adds an estimated total floor area to the LR-PPD. The estimated total floor area is derived from building footprints obtained from Ordnance Survey MasterMap and Environment Agency LiDAR data, but the methods are recognised as problematic for estimating the floor area of flats within a building [25], and for properties where the number of stories cannot be accurately inferred.

The second approach is more direct and links LR-PPD with the total floor area information from Domestic Energy Performance Certificates [2933]. Domestic Energy Performance Certificates (Domestic EPCs) is an open dataset released by the Ministry for Housing, Communities and Local Government (MHCLG). It not only records a property’s energy performance but also gives building attribute information (i.e., total floor area or number of habitable rooms). Despite this link being feasible, only two research studies have mentioned the linkage rate between LR-PPD and Domestic EPCs and no research has yet published the details of both the linkage method and linkage data [32,33]. Aiming to remedy this situation, we publish our own linkage codes alongside the open access and reusable house price per square metre dataset.

#### Data description and development

##### LR-PPD and Domestic EPCs data

The LR-PPD dataset is open, available online and updated on a monthly basis (https://www.gov.uk/government/statistical-data-sets/price-paid-data-downloads). The LR-PPD used in this research was downloaded in 2019 and contains 16 items with 24,852,949 transactions in England and Wales between 1/1/1995 and 31/10/2019. For each transaction, there is a unique transaction identifier along with the property’s transaction price, transaction date, address information (postcode, PAON, SAON, street), property type (detached, semi-detached, terraced houses or flats/maisonettes), whether a property is newly built or whether it was sold at full market value [21]. For various reasons, not all the properties within the dataset are sold at full market value, therefore these entries are excluded from the linkage exercise. These excluded entries comprise only 2.90% of the whole dataset.

EPCs have been required by law since 2008 for all properties sold, built or rented in England and Wales. Data from these certificates is open and available on-line from the MHCLG (https://epc.opendatacommunities.org/). The EPC dataset used in this research is the third version downloaded on 20/10/2020 and contains certificates issued between 1/10/2008 and 31/5/2019 [34]. It records 18,575,357 energy performance data records with 84 fields. It not only records a property’s energy performance but also building stock information, such as its address, total floor area and number of habitable rooms.

Figure 1

An example of the data linkage process.

A matching method containing a four-stage (251 matching rules) process was designed and is outlined in Fig. 2. In the Domestic EPCs, each record is created using a unique identifier named id. Each transaction in the LR-PPD has a unique identifier named transactionid. Taking Stage 1 as an example of the matching process; all the matches are based on a temporary address string (i.e., postcode+saonpaonstreet) with the algorithm testing whether postcode+saonpaonstreet in LR-PPD is equal to any postcode +ADDRE in the Domestic EPCs. Where they match directly, records for both datasets are joined, removed from the original data and stored in a new temporary linked data table, DATA 1. For records where a match is not achieved on the first pass, the algorithm moves onto a further set of matching tests in Stage 2.

Figure 2

Workflow of the four-stage data linkage between LR-PPD and Domestic EPCs.

Problems emerge where one property may have more than one Domestic EPC. Where this is the case, only property transactions with just one successfully linked EPC will be moved from the temporary DATA 1 and directly stored in the final linked-EPC PPD dataset. Property transactions with successful links to more than one EPC are stored in a separate dataset, DATA 3. These data are filtered to select all Domestic EPCs for which total floor area is neither NULL nor 0 and then linked where the EPC inspection date or lodgement date is closest to the transaction date in the LR-PPD. This result will then be stored in the final linked-EPC PPD dataset. Stages 2 to 4 follow a similar process to Stage 1. The linked-EPC PPD dataset is the data linkage result. These data linkage results link back to the original Domestic EPCs and to the LR-PPD by their unique identifiers.

Following the four-stage data linkage, 16,846,834 transaction records in England and Wales between 1995 and 2019 were successfully linked with Domestic EPCs. These comprise the linked dataset. The match rate of transactions in England is shown in Fig. 3. The match rate between 2011 and 2019 is higher than 90%, while the match rate of the rest of the period is considerably lower, this is mainly due to the EPCs dataset only covering the period between 1/10/2008 and 31/8/2019. The match rate of 56.20% in 2008 is particularly low but rapidly increases to over 88% after 2010. As the match rate before 2008 is significantly lower than for the period after 2008, only the linked data between 2009 and 2019 are used to conduct the evaluation of data linkage.

Figure 3

Match rate of linked house price data in England and Wales, 1995–2019.

##### Technical validation
###### Evaluation of the data linkage between 2009 and 2019

Match rates offer a crude way to quantify the matching performance, but visual comparison of the house price frequency distributions for the new linked data and original LR-PPD data reveals a clearer picture of matching performance. Histograms of the logarithm of transaction price from both datasets are shown in Fig. 4. In each graph, the distribution of the linked data (blue) is overlaid onto the distribution of the original LR-PPD dataset (white). The area of visible white bars represents the proportion of un-matched cases. Importantly, there was no significant loss of information as a result of un-matched cases in the data linkage between 2010 and 2019.

Figure 4

House price distribution of original data and linked data, 2009–2019.

The Kolmogorov–Smirnov test (K-S test) and the Jeffreys divergence (J-divergence) can be used to quantify the extent of house price information lost. The K-S test is a nonparametric test that examines the differences in the shape of a distribution. The K-S test, statistic D, is based on the maximum absolute difference between two cumulative distribution functions. Here, the test will be used to quantify the difference of two house price distributions (original data vs. linked data). The Jeffreys divergence (J-divergence), derived from information theory, is a function used to establish the distance of one probability distribution to another [3638]. To calculate the J-divergence, the data from two different samples must first be assigned to k different categories. In the case of this research, these categories are a simple subdivision of the log house price into bins. The J-divergence is then defined as

(1) $J=∑j=1kpjln(pjqj)+∑j=1kqjln(qjpj)$

where k is the number of categories, pj is the proportion of data points in category j in the original house price data, and qj is the proportion of data points in category j in the linked house price data. The final divergence measure, J, ranges from 0 to 1. If the distribution of both data samples across all the categories is the same, J will be 0. Larger values of J indicate greater differences between the two distributions.

To compute the J-divergence, the original data and linked data are divided into 100 bins, the 100 bins are created based on the 100 equal intervals of log house price in the original data in a given year. The results of the J-divergence and K-S tests are shown in Fig. 5. The p-values of all the K-S tests are less than 0.05 (the conventional default threshold for statistical significance), indicating a statistically significant difference between the original house price data and the linked house price data. The D statistic is relatively low (less than 0.007) after 2010. This demonstrates that the house price datasets before and after linkage are highly similar after 2010. The J-divergence results also show that the linked data exhibits relatively low information loss after 2010. Given the information lost in terms of J-divergence is slightly higher in 2010 compared to the loss after 2010, the newly created house price data from 2011 to 2019 is more representative than that for other years. Therefore we keep the 2011 to 2019 time period.

Figure 5

Results of K-S test and J-divergence method.

###### Linked dataset between 2011 and 2019

There were 7,249,259 full market value transactions in England and Wales between 1/1/2011 and 31/10/2019. Of these 6,753,335 have been successfully linked to EPC records. The overall match rate for this period is 93.15%. To support more advanced understanding of match rate spatially, the National Statistics Postcode Lookup (NSPL) (November 2019 version) is used to geo-reference both the linked data and original pre-linked LR-PPD by postcode to 2011 Census Output Area (OA) code, Lower Layer Super Output Area (LSOA) code and Middle Layer Super Output Area (MSOA) code [23]. Then the ONS hierarchical lookup table [39] is used to relate the OAs with Local authorities (LAs) and Regions information. Twenty-eight linked transactions and 3001 transactions in LR-PPD were lost during this process.

With the geo-referenced data, the overall match rates between 2011 and 2019 by LA (Fig. 6) are not equally distributed. Ninety-two percent of LAs in England and Wales have a match rate over 90%. Only two LAs (City of London and Isles of Scilly) have a match rate under 80%, these are 71.65% and 76.65%, respectively. The remaining 8% of LAs (26 LAs) show a match rate between 80% and 89.81%.

Figure 6

Overall match rates at local authority level between 2011 and 2019.

Looking at annual match rates across LAs in England and Wales (Fig. 7), 70% of LAs represent an annual match rate over 90% from 2011 to 2019, while 98% of the LAs represent an annual match rate over 80%. Figure 7 colours the six LAs with annual match rates lower than 80%. They are Isles of Scilly, City of London, Camden, Hammersmith and Fulham, Kensington and Chelsea, and Westminster. Only two LAs (City of London and Isles of Scilly), both of which are small in terms of their numbers of transactions, show an obvious fluctuation during this nine-year period. The rates between 2011 and 2019 are, for the remaining 346 LAs, very stable over time with a slight fall after 2015. Overall, the majority of LAs with a high match rate in 2011 maintained a high rate subsequently.

Figure 7

Match rate across local authority in England and Wales, 2011–2019.

Properties that feature in the LR-PPD (1/1/2011–31/10/2019) are not fully available in Domestic EPCs (1/10/2008–31/8/2019), this is the main reason for unequal match rates across LAs. For 18,980 transactions (2011–2019) relating to 6375 postcode units, Domestic EPCs cannot be found. For example, Domestic EPCs in the City of London at postcode ‘EC2Y 9BB’ are not available hence transactions in ‘EC2Y 9BB’ cannot be successfully matched, 0.26% of house price transactions in the LR-PPD (1/1/2011–31/10/2019) fail to link for this reason. Some transactions in the LR-PPD can relate to a postcode unit which is also identified in the EPC data but contain no matching property identifiers. For example, one flat sold in 2011 in Camden failed to match because Domestic EPCs are not available for this property. The potential reasons for non-availability of property records in Domestic EPCs could be that records have been incorrectly loaded by the surveyor or that the property owner has opted out.

##### Data cleaning

Of the linked data, 6,753,307 records can be geo-referenced by linking the NSPL between 1/1/2011 and 31/10/2019 in England and Wales. This data comprises the transaction information in the LR-PPD together with property size (total floor area and number of habitable rooms) in the EPCs. Some properties’ total floor area and number of habitable rooms are recorded in the EPCs with missing or unlikely values (e.g., total floor area records as 0.01). This data is excluded prior to analysis. All the excluded transactions along with cleaning methods are listed in Table 1, which accounts for 15.11% of the linked geo-referenced data.

Table 1.

List of transactions excluded from the linked geo-referenced data

No.MethodTransaction countProportion of all excluded transactions
1Transactions where total floor area or number of habitable rooms are NA or 0.1,016,24799.59%
2Transactions where total total floor area is smaller than 9 m2 or larger than 974 m2.5550.05%
3Transactions where total price per m2 is larger than 50,000 £/m2 or price per m2 is smaller than 200 £/m2.8410.08%
4Transactions where floor area per habitable room is larger than 100 m2.8870.09%
5Transactions where the number of habitable rooms is larger than 20.4760.05%
6Transactions where floor area per habitable room is smaller than 6.51 m2.1,4630.14%
Overall1,020,469100%

After removing the transactions listed in Table 1, 5,732,838 transactions are left. This represents 79.11% of full market property sales in the LR-PPD in England and Wales between 1/1/2011 and 31/10/2019. This linked dataset, like the LR-PPD, fully covers all the regional areas, local authorities and MSOAs in England and Wales. The LR-PPD covers 99.99% of LSOAs and this is also the same for the final linked data. Although the newly linked data is not as comprehensive as the LR-PPD, it is the largest open access house price dataset in England and Wales (1/1/2011–31/10/2019) containing both the transaction price and total floor area.

#### Dataset access

The final linked dataset details 5,732,838 transactions in England and Wales (1/1/2011–31/10/2019). It not only adds in a property’s total floor area and the number of habitable rooms, but also includes a new unique identifier (i.e., id) and other non-address fields (except LMK_KEY field) in the Domestic EPC dataset. Codes for other commonly used spatial units from Output Area (OA) to region are also included in this dataset. It contains 105 fields written in upper or lower case. All the fields written in upper case come from Domestic EPCs, the 33 remaining fields written in lower case are introduced in Github (https://github.com/Bin-Chi/Link-LR-PPD-and-Domestic-EPCs).

The linked, original EPCs and LR-PPD datasets are stored in CSV format and deposited in UKDA ReShare [40]. Postcode and address elements in the linked data stem from address information in LR-PPD, which is subject to Royal Mail copyright. The Royal Mail confirmed on 25/8/2020 that this linked data can be shared both by the first author and by the UK Data Service on the same terms as the original datasets. Therefore the linked data is under a licence that precludes commercial use. Meanwhile, the data linkage is conducted in R and stored in PostGIS. They are also open available in the UKDA ReShare under the same licence [40].

#### Potential dataset use and reuse

The newly linked dataset offers directly useable information on house price per square metre along with transaction price, total floor area, number of habitable rooms, transaction date and commonly used geographical area identifiers at and over postcode geographical level in England and Wales. As the LR-PPD data for the most recent two months may be incomplete due to the delay between the property transaction and its registration in Land Registry [21], we suggest researchers use transactions before 31/8/2019. This could support quantitative house price research in terms of house price variation within England and Wales after 2011 at multi-geographical scales over postcode level [41]. It also can be used to explore the relationship between house price and a property’s energy performance [30,31,42]. In addition, as the LR-PPD is updated monthly and the Domestic EPCs are updated two or four times a year, the open access codes will allow for future updates and thereby maintain a continuously updated dataset of residential property prices in England and Wales.

In this paper, we provide three technical validation approaches (section: Technical validation) to inform potential users of the data quality issues associated with different years in the dataset. In Table 1, a series of rules are described which we have used to exclude potential errors in the dataset. These are our suggestions and very reasonably, users could develop their own exclusion criteria for use with the raw linked data. In this dataset, before the data linkage, all transactions designated as category B (Additional Price Paid entry) and other property types are removed. Researchers could add these entries back in by modifying the related code shared via the UK Data Service Reshare service (https://reshare.ukdataservice.ac.uk/854240/). To further benefit non-commercial users who would like to access the latest orginal linkage dataset before the technical validation process, we will annually publish a simple version of the latest raw linkage data via the Greater London Authority (GLA)’s London Datastore.

For users who would like to update the linkage dataset themselves with the linkage code, the Domestic EPCs downloaded may be different from the third version used in this paper. For example, by the time this paper was under open review in February 2021, Domestic EPCs had reached their sixth released version (1/10/2008–20/9/2020). This new version covers more variables than the third version (e.g., building’s construction age band). Moreover, this sixth version has a different sample size of Domestic EPCs for the same time period compared with the third version. The reasons for this difference are complex, although one of the main reasons is that some property owners are withdrawing their EPC records from the publicly available platform. For users who use the latest linked data to explore house prices during the coronavirus pandemic, we highly recommend Neal Hudson’s blog [43] to gain an understanding of how the pandemic increased the HM Land Registry time lag in registrations.

#### Conclusions

The linkage method was orignally created to enrich the geo-referenced house price dataset in England before 31/7/2017 [35], it still shows a smiliar performance when updated with new published house prices and covers Wales as shown in this research. Within the linkage, properties in the LR-PPD and Domestic EPC dataset have slightly different names (e.g., ‘CLEATOR STREET’ vs. ‘CLEATER STREET’). We manually correct this type of mismatched address string for the properties located in England and record this correction within the linkage codes. This contributes to a less than 1% increase in the total matching rate. Our futher linkage research is to focus on fixing this issue in Wales and for the newly updated transactions in England.

We expect that this new house price dataset will enable new research directions in UK housing analysis. To date, most hedonic house price models have had to contend with the confounding influence of variations in dwelling size in different housing market areas. This new dataset will enable more parsimonious models of price variation to be explored where proxies for size can be dispensed with.

### Acknowledgements

This research was co-funded by the China Scholarship Council (CSC No. 201708060184) and University College London’s Overseas Research Scholarship scheme. The authors would like to thank David Lockett and Caroline Bray of Land Registry, who offered guidance on the LR-PPD. Thanks also to Jessica Williamson and Jake Mulley, who helped to transfer our questions on EPCs to the teams in MHCLG, allowing the authors to deepen their understanding of this dataset at the end of this research. The authors also would like to thank Rob Liddiard of the UCL Energy Institute for sharing his expertise regarding Domestic EPC data during the earlier stages of this research.

### Declarations and conflict of interest

The authors declare no conflicts of interest in connection to this article.

### Open data and materials availability

The datasets generated during and/or analysed during the current study are available in the repository: https://reshare.ukdataservice.ac.uk/854240/.

### References

1. Cannari L, Faiella I. House prices and housing wealth in Italy. Rochester, NY: Social Science Research Network. 2008. https://papers.ssrn.com/abstract=1162109Accessed 1 June 2020

2. Ciarlone A. House price cycles in emerging economies. Stud Econ Finance. 2015. Vol. 32(1):17–52

3. Ball MJ. Recent empirical work on the determinants of relative house prices. Urban Stud. 1973. Vol. 10(2):213–33

4. McAvinchey ID, Maclennan D. A regional comparison of house price inflation rates in Britain, 1967–76. Urban Stud. 1982. 43–57

5. Wabe JS. A study of house prices as a means of establishing the value of journey time, the rate of time preference and the valuation of some aspects of environment in the London Metropolitan Region. Appl Econ. 1971. Vol. 3(4):247–55

6. Rosenthal L. Regional house price interactions in the UK, 1975–81: a cross-spectral analysis. Appl Econ. 1986. Vol. 18(9):1011–23

7. Fleming MC, Nellis JG. Development of standardized indices for measuring house price inflation incorporating physical and locational characteristics. Appl Econ. 1992. Vol. 24(9):1067–85

8. Alexander C, Barrow M. Seasonality and cointegration of regional house prices in the UK. Urban Stud. 1994. Vol. 31(10):1667–89

9. Cook S. The convergence of regional house prices in the UK. Urban Stud. 2003. Vol. 40(11):2285–94

10. Ahlfeldt GM, Holman N, Wendland N. An assessment of the effects of conservation areas on value. English Heritage. 2012

11. Gray D. Are prices of new dwellings different? A spectral analysis of UK property vintages. Cogent Econ Finance. 2015. Vol. 3(1):993860

12. Law S. A multi-scale exploration of the relationship between spatial network configuration and housing prices using the hedonic price approach. A Greater London case study. Doctoral, University College London. 2018. http://discovery.ucl.ac.uk/10041030/Accessed 29 September 2018

13. Hudson C, Hudson J, Morley B. Differing house price linkages across UK regions: a multi-dimensional recursive ripple model. Urban Stud. 2018. Vol. 55(8):1636–54

14. Hamnett C. Regional variations in house prices and house price inflation 1969–81. Area. 1983. Vol. 15(2):97–109

15. Jones K, Bullen N. A multi-level analysis of the variations in domestic property prices: Southern England, 1980–87. Urban Stud. 1993. Vol. 30(8):1409–26

16. Orford S. Modelling spatial structures in local housing market dynamics: a multilevel perspective. Urban Stud. 2000. Vol. 37(9):1643–71

17. Fingleton B. A cross-sectional analysis of residential property prices: the effects of income, commuting, schooling, the housing stock and spatial interaction in the English regions. Pap Reg Sci. 2006. Vol. 85(3):339–61

18. Gray D. District house price movements in England and Wales 1997–2007: an exploratory spatial data analysis approach. Urban Stud. 2012. Vol. 49(7):1411–34

19. Cooper C, Orford S, Webster C, Jones CB. Exploring the ripple effect and spatial volatility in house prices in England and Wales: regressing interaction domain cross-correlations against reactive statistics. Environ Plann B Plann Des. 2013. Vol. 40(5):763–82

20. Szumilo N, Laszkiewicz E, Fuerst F. The spatial impact of employment centres on housing markets. Spat Econ Anal. 2017. Vol. 12(4):472–91

21. HM Land Registry. How to access HM Land Registry Price Paid Data. 2016. https://www.gov.uk/guidance/about-the-price-paid-data-data-excluded-from-price-paid-dataAccessed 20 January 2020

22. Marsden J. House prices in London – an economic analysis of London’s housing market. Greater London Authority. 2015. https://www.london.gov.uk/sites/default/files/house-prices-in-london.pdfAccessed 21 November 2016

23. South B, Henretty N. House price statistics for small areas: using administrative data to give new insights. Stat J IAOS. 2017. Vol. 33(3):609–14

24. Office for National Statistics, Land Registry, Registers of Scotland and Land & Property, and Services Northern Ireland. Development of a single Official House Price Index. 2016. https://www.ons.gov.uk/economy/inflationandpriceindices/methodologies/developmentofasingleofficialhousepriceindexAccessed 10 October 2018

25. Orford S. Towards a data-rich infrastructure for housing-market research: deriving floor-area estimates for individual properties from secondary data sources. Environ Plann B Plann Des. 2010. Vol. 37(2):248–64

26. Thwaites G, Wood R. The measurement of house prices. Rochester, NY: Social Science Research Network. 2005. https://papers.ssrn.com/abstract=707043Accessed 17 October 2018

27. Sirmans GS, MacDonald L, Macpherson DA, Zietz EN. The value of housing characteristics: a meta analysis. J Real Estate Finance Econ. 2006. Vol. 33(3):215–40

28. De Nadai M, Lepri B. The economic value of neighborhoods: predicting real estate prices from the urban environment. Italy: IEEE. 2018. p. 323–30. http://arxiv.org/abs/1808.02547Accessed 20 August 2018

29. Fuerst F, McAllister PM, Nanda A, Wyatt P. Is energy efficiency priced in the housing market? Some evidence from the United Kingdom. Rochester, NY: Social Science Research Network. 2013. https://papers.ssrn.com/abstract=2225270Accessed 31 May 2018

30. Fuerst F, McAllister P, Nanda A, Wyatt P. Does energy efficiency matter to home-buyers? An investigation of EPC ratings and transaction prices in England. Energy Econ. 2015. Vol. 48:145–56

31. Fuerst F, McAllister P, Nanda A, Wyatt P. Energy performance ratings and house prices in Wales: An empirical study. Energy Policy. 2016. Vol. 92:20–33

32. Powell-Smith A. House prices by square metre in England & Wales. 2017. https://houseprices.anna.psAccessed 19 November 2018

33. Simpson P, Nesheim L, Halket J, Mysliwski M. Estimating the benefits of transport investment. 2018. https://www.ifs.org.uk/publications/13241Accessed 24 January 2019

34. MHCLG. Updates to Energy Performance Certificate open data. 2019. https://news.opendatacommunities.org/updates-to-energy-performance-certificate-open-data/Accessed 20 January 2020

35. Chi B, Dennett A, Oléron-Evans T, Morphet R. Creating a new dataset to analyse house prices in England. 2019. https://www.ucl.ac.uk/bartlett/casa/publications/2019/sep/casa-working-paper-213Accessed 20 September 2019

36. Jeffreys H. An invariant form for the prior probability in estimation problems. Proc R Soc Lond Ser A Math Phys Sci. 1946. Vol. 186(1007):453–61

37. Nielsen F. A family of statistical symmetric divergences based on Jensen’s inequality. 2010.

38. Rohde N. J-divergence measurements of economic inequality. J R Stat Soc Ser A Stat Soc. 2016. Vol. 179(3):847–70

39. Office for National Statistics. Output Area (2011) to Built-up Area Sub-division to Built-up Area to Local Authority District to Region (December 2011) Lookup in England and Wales. 2019. http://geoportal.statistics.gov.uk/datasets/output-area-2011-to-built-up-area-sub-division-to-built-up-area-to-local-authority-district-to-region-december-2011-lookup-in-england-and-walesAccessed 7 June 2020

40. Chi B, Dennett A, Oléron-Evans T, Morphet R. A new attribute-linked residential property price dataset for England and Wales, 2011–2019. ReShare. 2021. [Cross Ref]Accessed 17 June 2020

41. Chi B, Dennett A, Oléron-Evans T, Morphet R. Shedding new light on house price variation in England: a multi-scale exploration. Environ Plan B Urban Anal City Sci. 2020. [Cross Ref]Accessed 4 September 2020

42. Department of Energy & Climate Change. An investigation of the effect of EPC ratings on house prices. 2013. https://www.gov.uk/government/publications/an-investigation-of-the-effect-of-epc-ratings-on-house-pricesAccessed 22 June 2018

43. Hudson N. Digging Deeper – Land Reg Lag & Coronavirus. BuiltPlace. 2021. https://builtplace.com/digging-deeper-land-reg-lag-coronavirus/Accessed 8 April 2021

### Appendices

##### Appendix A
Table A.

New address variables created from LR-PPD and Domestic EPC datasets for data linkage

VariableCreate methodDataset
ADDCDelete all ‘/’, ‘.’, ‘’’ punctuation characters and blank spaces in ADDDomestic EPCs
ADDUDelete the ‘UNIT’ string in the ADD, then delete all commas and blank spacesDomestic EPCs
ADDCCDelete all ‘-’, ‘/’, ‘.’, ‘’’ punctuation characters and blank spaces in ADDDomestic EPCs
ADDC4Delete all ‘/’, ‘.’, ‘-’ punctuation characters and blank spaces in ADDDomestic EPCs
ADD1CDelete all ‘/’, ‘.’, ‘’’ punctuation characters and blank spaces in ADD1Domestic EPCs
ADD1C6Delete the ‘UNIT’ in ADD1, then delete all commas and blank spacesDomestic EPCs
ADD12C1Delete all ‘.’, ‘’’, ‘/’ punctuation characters and commas in ADD12Domestic EPCs
ADD12C3Delete all ‘.’, ‘’’, ‘/’, ‘-’ punctuation characters and commas in the ADD12Domestic EPCs
ADD13CDelete ‘.’, ‘’’, ‘/’ punctuation characters and blank spaces in ADD13Domestic EPCs
ADD165For the ADD1 containing a comma and ‘.’ punctuation characters, select the strings after the first comma, then delete the ‘.’ punctuation characterDomestic EPCs
ADD1df1Delete ‘FLAT’ string in ADD1 and then select first word boundary, then delete all commasDomestic EPCs
ADD1duDelete the ‘UNIT’ string in ADD1, then delete all commas and blank spacesDomestic EPCs
add263Select all strings before the first blank space in ADD2, then delete all commasDomestic EPCs
apADD1Delete ‘-’, ‘/’, ‘.’, ‘’’ ‘,’ punctuation characters and blank spaces in apadd1Domestic EPCs
ADDr62For the ADD containing a comma, select all strings after the first comma, then delete the ‘-’, ‘’’, ‘.’ and ‘/’ punctuation charactersDomestic EPCs
ADDC5Delete all ‘/’, ‘.’ punctuation characters and blank spaces in ADDDomestic EPCs
ADDC10Delete all ‘-’, ‘/’, ‘.’, ‘’’, ‘,’ punctuation characters and blank spaces in ADDDomestic EPCs
add1f61If the ADD1 in EPC data has ‘FLAT’ string, delete the ‘FLAT’ string, then keep all strings before the first blank space, and then delete all commasDomestic EPCs
add1f61f2Combine ‘FLAT’ and add1f61 with a blank space, then combine ADD2 with a comma and a blank space, then delete all blank spaces and commasDomestic EPCs
add1f61f3Combine ‘FLAT’ and add1f61 with a blank space, then combine ADD2 with a comma and a blank space, then delete all blank spacesDomestic EPCs
adddapDelete the ‘APARTMENT’ string in ADD, then delete all blank spacesDomestic EPCs
saonnDelete all ‘/’ punctuation characters in SAONLR-PPD
paonnDelete all ‘’’, ‘.’ punctuation characters in PAONLR-PPD
paonn2Delete all commas and blank spaces in PAONLR-PPD
paonn3Delete all ‘-’ and blank spaces in paonnLR-PPD
streetnDelete all ‘’’ punctuation characters in streetLR-PPD
streetn1Delete ‘-’, ‘.’, ‘’’ punctuation characters and blank spaces in streetLR-PPD
streetn2Delete ‘-’, ‘’’ punctuation characters and blank spaces in streetLR-PPD
streetn5Delete ‘/’, ‘.’, ‘’’ punctuation characters in streetLR-PPD
localitynDelete all ‘’’, ‘.’ punctuation characters in localityLR-PPD
saonpaonstreet31Delete all commas in saonpaonstreet3LR-PPD
saonpaonstreetn31Delete all commas in saonpaonstreetn3LR-PPD
paon61For the PAON containing comma, grab the strings before the first commaLR-PPD
paon61cDelete all blank spaces in paon61LR-PPD
paon61xSelect the strings before the first commaLR-PPD
paon62For the PAON containing a comma, subset the strings after the first commaLR-PPD
paon62cSubset the strings after the first comma in PAONLR-PPD
saonpaon62cstreetn2Combine SAON and paon62c with a comma and a blank space, then combine streetn with a blank space, then delete all blank spacesLR-PPD
saonpaon62cstreetnCombine SAON and paon62c with a blank space, then combine streetn with a blank space, then delete all blank spacesLR-PPD
saonpaon62cstreetCombine SAON and paon62c with a comma and a blank space, then combine street with a comma and a blank space, then delete all blank spacesLR-PPD
paon64Subset the string before the first blank space in PAONLR-PPD
paon641Subset the string after the first blank space in PAONLR-PPD
paon65For the PAON containing a comma, extract the last word from PAONLR-PPD
paon65nFor the paonn containing a comma, extract the last word from paonnLR-PPD
saon2Delete ‘APARTMENT’ string in SAONLR-PPD
fldsaonIf SAON contains ‘FLAT’ string and PAON does not start with number string. Then delete ‘FLAT’ string in SAONLR-PPD
fldsaon1If SAON contains ‘FLAT’ string and PAON starts with number string. Then delete ‘FLAT’ string in SAONLR-PPD
saon7Replace ‘FLAT’ string by ‘APARTMENT’ string in SAONLR-PPD
saon71Replace ‘FLAT’ string by ‘APARTMENT’ string in saonnLR-PPD
saonn4Delete ‘FLAT’ string in saonnLR-PPD
saon1Replace ‘APARTMENT’ string by ‘FLAT’ string in saonnLR-PPD
saonn2Delete ‘APARTMENT’ string in saonnLR-PPD
saonn3Delete ‘.’ and ‘/’ in SAONLR-PPD
saonn5If the SAON contains ‘APARTMENT’, replace ‘APARTMENT’ string by ‘UNIT’ string in SAON and then delete ‘/’ punctuation charactersLR-PPD
sao1Replace ‘APARTMENT’ string by ‘FLAT’ string in SAONLR-PPD
saon8If SAON contains the ‘LOFT’ string, replace ‘LOFT’ by ‘FLAT’LR-PPD
saon4Delete ‘FLAT’ string in SAONLR-PPD
paon6164Select the number string from paon61LR-PPD
paon6163Select all non-digitals from paon61LR-PPD
paon11Delete all comma in the PAONLR-PPD
ADD12Combine ADD1 and ADD2 with a comma and a blank space, then delete all blank spacesDomestic EPCs
ADD12newCombine ADD1 and ADD2NEW with a blank space, then delete all ‘/’, ‘.’, ‘’’ punctuation characters, blank spaces and commasDomestic EPCs
ADD13Combine ADD1 and ADD3 with a comma and a blank space, then delete all blank spacesDomestic EPCs
ADD662Combine ADD66 and ADD2 with a comma and a blank space, then delete all commas and blank spacesDomestic EPCs
ADD67Combine ADD161 and ADD165 with a comma and a blank space, then delete all commas and blank spacesDomestic EPCs
ADDSP12Combine add1sp and add2 with a comma and a blank space, then delete all commas and blank spacesDomestic EPCs
ADD68Combine add161 and add63 with a comma and a blank space, then delete all ‘’’ and blank spacesDomestic EPCs
ADD69Combine add1nn and ADD2 with a comma and a blank space, then delete all blank spacesDomestic EPCs
flADDCombine ‘FLAT’ string and ADD with a comma and a blank space, then delete all commas and blank spacesDomestic EPCs
ADD2611Combine add261 and add1 with a comma and a blank space, then delete all commas and blank spacesDomestic EPCs
fladdCombine ‘FLAT’ and ADD with a blank space, then delete all blank spacesDomestic EPCs
ADDr66Combine ADDr61 and ADDr62 with a comma and a blank space, then delete all commas and blank spacesDomestic EPCs
ADD6Combine ADD1 and ADD2 with a comma and a blank space, then combine add361 with a comma and a blank space, then delete all ‘/’, ‘.’, ‘’’ punctuation characters and blank spacesDomestic EPCs
add12643Combine ADD1 and add264 with a comma and a blank space, then combine ADD3 with a comma and a blank space, then delete all blank spacesDomestic EPCs
ADD1264Combine ADD1 and add2641 with a comma and a blank space, then delete all blank spaces and commasDomestic EPCs
ADD1265Combine ADD1 and add264 with a comma and a blank space, then delete all blank spacesDomestic EPCs
ADD8Combine ADD1C10 and ADD2 with a comma and a blank space, then delete all blank spacesDomestic EPCs
ADD1num2Combine ADD1num and ADD2 with a comma and a blank space, then delete, ‘/’, ‘.’, ‘’’ punctuation characters and all blank spacesDomestic EPCs
ADD1262Combine ADD1 and ADD262 with a comma and a blank space, then delete all blank spacesDomestic EPCs
ADD1263Combine ADD1 and ADD2641 with a comma and a blank space, then delete all blank spacesDomestic EPCs
ADD1262CCombine ADD1 and ADD262 with a comma and a blank space, then delete all blank spaces and commasDomestic EPCs
ADD1262ccCombine ADD1 and ADD262 with a comma and a blank space, then delete all blank spaces and ‘’’Domestic EPCs
apadd1632Combine ‘APARTMENT’ and add163 with a blank space, then combine with ADD2 with a comma and a blank space, then delete all blank spaces and commasDomestic EPCs
saonpaonstreetCombine SAON and PAON with a comma and a blank space, then combine street with a blank space, then delete all blank spacesLR-PPD
saonpaonstreet5Combine SAON and PAON with a comma and a blank space, then combine street with a blank space, then delete all blank spaces and commasLR-PPD
saonpaonstreet1Combine SAON and PAON with a comma and a blank space, then combine street with a comma and a blank space, then delete all blank spacesLR-PPD
saonpaonstreet2Combine SAON and PAON with a blank space and then remove leading and trailing whitespaces, then combine street with a comma and a blank space, then delete all blank spacesLR-PPD
saonpaonstreetnCombine saonn and paonn with a comma and a blank space, then combine streetn with a blank space, then delete all blank spacesLR-PPD
saonpaonstreetn1Combine saonn and paonn with a comma and a blank space, then combine streetn with a comma and a blank space, then delete all blank spacesLR-PPD
saonpaonstreetn2Combine saonn and paonn with a blank space, then combine streetn with a comma and a blank space, then delete all blank spacesLR-PPD
saonpaonloCombine SAON and PAON with a blank space, then combine locality with a comma and a blank space, then delete all blank spacesLR-PPD
saonpaonlonCombine saonn and paonn with a blank space, then combine localityn with a comma and a blank space, then delete all blank spacesLR-PPD
saonpaonstreet3Combine SAON and PAON with a blank space and then remove leading and trailing whitespaces, then delete combine street with a blank space, then delete all blank spacesLR-PPD
saonpaonstreetn3Combine saonn and paonn with a blank space, then delete combine streetn with a blank space and then remove leading and trailing whitespaces, then delete all blank spacesLR-PPD
saonpaonstreetloCombine SAON and PAON with a comma and a blank space, then combine street with a comma and a blank space and then remove the leading and trailing whitespaces, then combine locality with a comma and a blank space, then delete all blank spacesLR-PPD
saonpaonstreetnloCombine saonn and paonn with a comma and a blank space, then combine streetn with a comma and a blank space and then remove the leading and trailing whitespaces, then combine localityn with a comma and a blank space, then delete all blank spacesLR-PPD
saonpaon1Combine SAON and PAON with a blank space, then delete all blank spacesLR-PPD
saonpaon2Combine SAON and PAON with a comma and a blank space, then delete all blank space and all blank spacesLR-PPD
saonpaon3Combine SAON and PAON with a comma and a blank spaceLR-PPD
paonstreetloCombine PAON and street with a comma and a blank space, then combine locality with a comma and a blank space, then delete all blank spacesLR-PPD
paonstreetnloCombine paonn and streetn with a comma and a blank space, then combine localityn with a comma and a blank space, then delete all blank spacesLR-PPD
paonstreetlo1Combine PAON and street with a blank space, then combine locality with a comma and a blank space, then delete all blank spacesLR-PPD
paonstreetnlo1Combine paonn and streetn with a blank space, then combine localityn with a comma and a blank space, then delete all blank spacesLR-PPD
paonstreetlo2Combine PAON and street with a blank space, then combine locality with a blank space, then delete all blank spaces and commasLR-PPD
paonstreetnCombine paonn and streetn with a comma and a blank space, then delete all blank spacesLR-PPD
paon66Combine paon62 and paon61 with a comma and a blank space, then delete all blank spacesLR-PPD
paon65streetloCombine paon65 and street with a comma and a blank space, then combine locality with a comma and a blank space, then delete all blank spacesLR-PPD
paon65streetnloCombine paon65n and streetn with a comma and a blank space, then combine localityn with a comma and a blank space, then delete all blank spacesLR-PPD
paon65streetlo1Combine paon65 and street with a blank space, then combine locality with a blank space, then delete all blank spaces and commasLR-PPD
paon61streetloCombine paon61 and street with a comma and a blank space, then combine locality with a comma and a blank space, then delete all blank spacesLR-PPD
paon61streetlo1Combine paon61 and street with a blank space, then combine locality with a blank space, then delete all blank spaces and commasLR-PPD
paon61loCombine paon61 and locality with a comma and a blank space, then delete all blank spacesLR-PPD
paon61streetCombine paon61 and street with a blank space, then delete all blank spaces and commasLR-PPD
paon65streetCombine paon65 and street with a blank space, then delete all blank spaces and commasLR-PPD
paon66streetloCombine paon62 and paon61 with a blank space, then combine street with a blank space, then combine locality with a blank space, then delete all commas and blank spacesLR-PPD
paon61newCombine ‘THE’ and paon61 with a blank spaceLR-PPD
paonstreetlo3Combine PAON and street with a comma and a blank space, then combine locality with a comma and a blank space, then delete all blank spaces and commasLR-PPD
paonstreetCombine PAON and street with a comma and a blank space, then delete all commas and blank spacesLR-PPD
paonstreetn1Combine PAON and streetn1 with a comma and a blank space, then delete all commas and blank spacesLR-PPD
paonstreet1Combine PAON and street with a comma and a blank space, then delete all blank spacesLR-PPD
paonstreet2Combine PAON and street with a blank space, then delete all blank spacesLR-PPD
paon62streetloCombine paon62 and street with a comma and a blank space, then combine locality with a comma and a blank space, then delete all blank spacesLR-PPD
paon62streetlo1Combine paon62 and street with a blank space, then combine locality with a blank space, then delete all blank spaces and commasLR-PPD
paonflatCombine ‘FLAT’ string and PAON with a blank spaceLR-PPD
paonfstreetCombine paonflat with street with a comma and a blank space, then delete all blank spacesLR-PPD
paonapCombine ‘APARTMENT’ string and PAON with a blank spaceLR-PPD
paonapstreetCombine paonap with street with a comma and a blank space, then delete all blank spacesLR-PPD
paonfstreet1Combine paonflat with street with a blank space, then delete all blank spacesLR-PPD
paonfstreetn5Combine paonflat with streetn5 with a blank space, then delete all blank spacesLR-PPD
paonstreet3Combine PAON and street with a blank space, then delete all blank spaces and commasLR-PPD
paonapstreet1Combine paonap with street with a blank space, then delete all blank spacesLR-PPD
paonapstreet2Combine paonap with street with a blank space, then delete all blank spaces and commasLR-PPD
paonapstreetn5Combine paonap with streetn5 with a blank space, then delete all blank spacesLR-PPD
paonstreet4Replace ‘FLAT’ by ‘APARTMENT’ in paonstreet3LR-PPD
paonfl1Combine ‘FLAT,’ string and strings in PAON with a blank spaceLR-PPD
paonf1streetn5Combine paonfl1 with streetn5 with a comma and a blank space, then delete all blank spacesLR-PPD
paonfstreetn6Combine paonflat with streetn5 with a comma and a blank space, then delete all blank spacesLR-PPD
flpaon3streetn5Combine ‘FLAT’ string and PAON with a blank space, then combine with streetn5 with a blank space then delete all blank space and ‘-’ punctuation charactersLR-PPD
saonpaon65streetCombine SAON and paon65 with a comma and a blank space, then combine street with a comma and a blank space, then delete all blank spacesLR-PPD
saonpaon62streetn2Combine SAON and paon62 with a comma and a blank space, then combine streetn with a blank space, then delete all blank spacesLR-PPD
saonpaon61streetCombine SAON and paon61 with a blank space, then combine street with a comma and a blank space, then delete all blank spaces and commasLR-PPD
saonpaon61xstreetCombine SAON and paon61x with a blank space, then combine street with a comma and a blank space, then delete all blank spaces and commasLR-PPD
saonpaonnCombine saonn and paonn with a comma and a blank space, then delete all blank spacesLR-PPD
saon2streetCombine saon2 and street with a comma and a blank space, then delete all blank spacesLR-PPD
saon2paon61streetCombine saon2 and paon61 with a blank space, then combine street with a comma and blank space, then delete all blank spacesLR-PPD
flsaonpaonstreet0Combine flsaon and PAON with a comma and a blank space and then combine street with a comma and a blank spaceLR-PPD
flsaonpaon1Combine flsaon and PAON with a blank space, then delete all blank spacesLR-PPD
flsaonpaon2Combine flsaon and PAON with a comma and a blank space, then delete all blank spacesLR-PPD
flsaonpaon3Combine flsaon3 and PAON with a comma and a blank space, then delete all blank spacesLR-PPD
flsaonFor the SAON starts with number string, combine ‘FLAT’ string with SAON with a blank spaceLR-PPD
flsaon1For the SAON starts with number string, combine ‘FLAT’ string with saonn with a blank spaceLR-PPD
flsaon3Combine ‘FLAT’ string with SAON with a blank spaceLR-PPD
flsaon1paonstreetn2Combine flsaon1 with paonn with a comma and a blank space, then combine the streetn2 with a comma and a blank space, then delete all blank spacesLR-PPD
flsaonpaonstreet1Combine flsaon with PAON with a blank space, then combine the street with a blank space, then delete all blank spaces and commasLR-PPD
flsaonpaon62street1Combine flsaon and paon62 with a blank space, then combine street with a blank space, then delete all blank spaces and commasLR-PPD
fldsaonpaonstreet1Combine fldsaon and PAON with a blank space, then combine street with a blank space, then delete all blank spaces and commasLR-PPD
saon7paonstreet1Combine saon7 and PAON with a comma and a blank space, then combine street with a blank space, then delete all blank spacesLR-PPD
saon7paonstreet2Combine saon7 and PAON with a blank space, then combine street with a blank space, then delete all blank spaces and commasLR-PPD
apsaonFor SAON starts with number string, combine ‘APARTMENT’ string with SAON with a blank spaceLR-PPD
apsaonpaonstreet1Combine apsaon and PAON with a blank space, then combine street with a blank space, then delete all blank spaces and commasLR-PPD
saon7paonstreetnCombine saon71 and paonn with a comma and a blank space, then combine streetn with a blank space, then delete all blank spacesLR-PPD
saon7paonnCombine saon7 and paonn with a comma and a blank space, then delete all blank spacesLR-PPD
saon7paonCombine saon7 and PAON with a comma and a blank space, then delete all blank spacesLR-PPD
saon4paonstreetnCombine saonn4 and paonn with a comma and a blank space, then combine streetn with a blank space, then delete all blank spacesLR-PPD
saon4paonstreetn1Combine saonn4 and paonn with a blank space, then combine streetn with a comma and a blank space, then delete all blank spacesLR-PPD
apsaonpaon6streetnCombine apsaon and paon62 with a comma and a blank space, then combine streetn with a blank space, then delete all blank spacesLR-PPD
flsaonpaonstreetnCombine ‘FLAT’ string with SAON with a blank space, then combine paonn with a comma and a blank space, then combine with streetn with a blank space, then delete all blank spacesLR-PPD
saon4paonstreetn3Combine saonn4 and paonn with a blank space, then combine streetn with a blank space, then delete all blank spacesLR-PPD
saon4paonstreetn4Combine saonn4 and paonn with a comma and a blank space, then combine streetn with a comma and a blank space, then delete all blank spacesLR-PPD
saon1paonstreetnCombine saon1 and paonn with a blank space, then combine streetn with a comma and a blank space, then delete all blank spacesLR-PPD
saon1paonstreetn1Combine saon1 and paonn with a comma and a blank space, then combine streetn with a comma and a blank space, then delete all blank spacesLR-PPD
saon1paonstreetn2Combine saon1 and paonn with a blank space, then combine streetn with a blank space, then delete all blank spaces and commasLR-PPD
saon2paonstreetn3Combine saonn2 and paonn with a blank space, then combine streetn with a blank space, then delete all blank spacesLR-PPD
saon2paonstreetn2Combine saonn2 and paonn with a blank space, then combine streetn with a comma and a blank space, then delete all blank spacesLR-PPD
saonn2paonn1Combine saonn2 and paonn with a blank space, then delete all blank spacesLR-PPD
saonpaon62streetCombine SAON and paon62 with a comma and a blank space, then combine street with a blank space, then delete all blank spacesLR-PPD
saon2paonstreetnCombine saonn2 and paonn with a comma and a blank space, then combine street with a blank space, then delete all blank spacesLR-PPD
saonn3paonnstreetCombine saonn3 and paonn with a comma and a blank space, then combine street with a blank space, then delete all blank spacesLR-PPD
saonn2paonn1streetnCombine saonn2 and paonn with a comma and a blank space, then combine street with a blank space, then delete all blank spacesLR-PPD
saonpaon62streetn1Combine SAON and paon62c with a comma and a blank space, then combine streetn with a comma and a blank space, then delete all blank spacesLR-PPD
saon1paonstreet6nCombine saon1 and paon62c with a comma and a blank space, then combine streetn with a comma and a blank space, then delete all blank spacesLR-PPD
saon1paonstreet6n1Combine saon1 and paon62 with a comma and a blank space, then combine street with a blank space, then delete all blank spacesLR-PPD
saon2paonstreetn4Combine saonn2 and paonn with a comma and a blank space, then combine streetn with a comma and a blank space, then delete all blank spacesLR-PPD
saon5paonstreetn1Combine saonn5 and paonn with a blank space, then combine streetn with a comma and a blank space, then delete all blank spacesLR-PPD
paonsaon2streetnCombine paonn and saonn2 with a blank space, then combine streetn with a blank space, then delete all blank spacesLR-PPD
paon62saonpstreetCombine paon62 and SAON with a blank space, then combine paon61 with a blank space and then combine street with a comma and a blank space, then delete all blank spaces and commasLR-PPD
saonpaon66streetCombine SAON and paon62 with a comma and a blank space, then combine paon61 with a blank space, then combine street with a blank space, then delete all blank spaces and commasLR-PPD
saon1paonstreetn3Combine saon1 and paonn with a comma and a blank space, then combine streetn with a blank space, then delete all blank spacesLR-PPD
saon1paonstreetCombine sao1 and PAON with a comma and a blank space, then combine street with a blank space, then delete all blank spacesLR-PPD
saon2paonloCombine saon2 and PAON with a blank space, then combine locality with a comma and a blank space, then delete all blank spacesLR-PPD
saon1paonCombine sao1 and PAON with a comma and a blank space, then delete all blank spacesLR-PPD
saon1paon61streetCombine sao1 and paon61c with a blank space, then combine street with a comma and a blank space, then delete all blank spacesLR-PPD
saon1paon1Combine sao1 and PAON with a blank space, then delete all blank spacesLR-PPD
psaonpaonstreetCombine paon64 and SAON, then combine paon641 with a blank space, then combine street with a comma and a blank space, then delete all blank spaces and commasLR-PPD
saon2paon62streetCombine saon2 and paon62 with a comma and a blank space, then combine street with a comma and a blank space, then delete all blank spacesLR-PPD
saon2paonstreetCombine saon2 and PAON with a blank space, then combine street with a comma and a blank space, then delete all blank spacesLR-PPD
flsaonpaonstreetCombine flsaon with PAON with a comma and a blank space, then combine the street with a comma and a blank space, then delete all blank spaces and commasLR-PPD
psaon8streetCombine PAON and fldsaon1, then combine street with a blank space then delete all the blank spaces and commasLR-PPD
saonstreetCombine SAON and street with a comma and a blank space, then delete all blank spacesLR-PPD
saonstreet1Combine SAON and street with a blank space, then delete all blank spaces and commasLR-PPD
saonstreet2Combine SAON and street with a comma and a blank space, then delete all blank spaces and commasLR-PPD
saonstreet3Combine SAON and street with a blank space, then delete all blank spacesLR-PPD
saonstreetloCombine SAON and street with a comma and a blank space, then combine with locality with a comma and a blank space, then delete all blank spacesLR-PPD
unsaonpaonstreet2Combine ‘UNIT’ string with SAON with a blank space, then combing PAON with a blank space, then combine with street with a comma and a blank space and then delete all blank spacesLR-PPD
flsaonpaonstreet2Combine flsaon3 with PAON with a blank space, then combine the street with a comma and a blank space, then delete all blank spacesLR-PPD
saon7paon6streetCombine saon7 and paon62 with a comma and a blank space, then combine street with a blank space, then delete all blank spacesLR-PPD
saon8paonstreet2Combine saon8 and PAON with a blank space, then combine street with a comma and a blank space, then delete all blank spacesLR-PPD
paonloFor PAON start with number string, combine PAON and locality with a comma and a blank space, then delete all blank spacesLR-PPD
flsaonpaonstreet3Combine flsaon3 with PAON with a blank space, then combine the street with a comma and a blank space, then delete all blank spaces and commasLR-PPD
saonpaon62steetCombine SAON and paon62 with a comma and a blank space, then combine street with a comma and blank space, then delete all blank spacesLR-PPD
flsaonpaon61streetCombine flsaon with paon61 with a blank space, then combine the street with a comma and a blank space, then delete all blank spaces and commasLR-PPD
flsaonpaon61street1Combine flsaon with paon61 with a blank space, then combine the street with a comma and a blank space, then delete all blank spacesLR-PPD
saon4paonstreetCombine saon4 with PAON with a blank space, then combine the street with a blank space, then delete all blank spacesLR-PPD
saonpaon61street1Combine SAON and paon61 with a blank space, then combine street with a comma and a blank space, then delete all blank spacesLR-PPD
flsaonpaonstreet4Combine flsaon3 with PAON with a comma and a blank space, then combine the street with a comma and a blank space, then delete all blank spacesLR-PPD
paonsaonstreetCombine PAON and SAON, then combine street with a comma and a blank space, then delete all blank spacesLR-PPD
saonpaon61Combine SAON and paon61 with a comma and a blank space, then delete all blank spacesLR-PPD
paonsaonstreet1Combine PAON and SAON with a comma and a blank space, then combine street with a comma and a blank space, then delete all blank spacesLR-PPD
apsaonpaonCombine apsaon and PAON with a blank space, then delete all blank spacesLR-PPD
saon1paon62streetCombine sao1 and paon62 with a comma and a blank space, then combine street with a comma and a blank space, then delete all blank spacesLR-PPD
apsaonpaon62street1Combine apsaon and paon62 with a comma and a blank space, then combine street with a blank space, then delete all blank spacesLR-PPD
saon2paonstreet1Combine saon2 and PAON with a blank space, then combine street with a comma and a blank spacesLR-PPD
apsaonpaonstreet2Combine apsaon and PAON with a blank space, then combine street with a comma and a blank space, then delete all blank spacesLR-PPD
psaonpstreetCombine paon6164 and SAON, then combine paon6163 with a blank space, then combine paon62 with a comma and then combine street with a comma and a blank space and delete all blank spacesLR-PPD
saonpaonstreet11Combine SAON and paon11 with a blank space, then combine street with a blank space, then delete all blank spacesLR-PPD
saonpaon65street1Combine SAON and paon65 with a comma and a blank space, then combine street with a blank space, then delete all blank spacesLR-PPD
##### Appendix B
Table B.

Details of matching rules in four stages

Stage No.Matching rule No.Matching rule1
Matching rule 39For the street is null, paonn3=ADD1CC
Matching rule 65If street in PPD is not null, then paonstreet=ADDSP12
Matching rule 73Having corrected the mismatched address strings in ADD1 in EPC dataset, if SAON in PPD is null and ADD in EPCs does not contain a hyphenated number string then
Matching rule 74If paon61 does not contain ‘FLAT’, ‘FLOOR’ and number strings in PPD data, then paon62streetlo=ADDRE
Matching rule 75If paon61 does not contain ‘FLAT’, ‘FLOOR’ and number strings in PPD data, then paon62streetlo=ADD12
Matching rule 76If paon61 does not contain ‘FLAT’, ‘FLOOR’ and number strings in PPD data, then paon65streetnlo=ADDCC
Matching rule 77If paon61 does not contain ‘FLAT’, ‘FLOOR’ and number strings in PPD data, then paon62streetlo1=ADDREC
Matching rule 94If the transactions in SE5 7QS, then PAON=ADD1df1
Matching rule 95Having corrected the mismatch strings in add1 in EPCs, thenpaonn2=ADD1du
Matching rule 96Having corrected the mismatch strings in add1 in EPCs, thenpaon61c=ADD1C9
Matching rule 97Having corrected the mismatch strings in add1 in EPCs, if PAON starts with number characters, then paonfstreet1=ADD1C9
Matching rule 98If PAON starts with number characters, then paonfstreetn5=ADD1C
Matching rule 101If PAON in PPD starts with number characters, paonapstreetn5=ADD12C1
Matching rule 108If PAON in PPD starts with number characters, paonfstreetn5=ADD1C2
Matching rule 113If PAON in PPD starts with number characters, which are not hyphenated, then flpaon3streetn5=ADDC10
Matching rule 115If PAON in PPD starts with number characters followed by an uppercase letter and ADD1 in EPC contains string pattern of ‘FLAT’ string followed by an uppercase letter, then paonstreet2=ADD5
Matching rule 133paonstreetn=ADDC4, then remove the incorrect matching for flats/maisonettes.
Matching rule 154For flats/maisonettes, if SAON contains the ‘APARTMENT’ string, then saon1paonstreetn=ADDC
Matching rule 155For flats/maisonettes, if SAON contains the ‘APARTMENT’ string, then saon1paonstreetn=ADD12C
Matching rule 156For flats/maisonettes, if SAON contains the ‘APARTMENT’ string, then saon1paonstreetn1=ADDC
Matching rule 157For flats/maisonettes, if SAON contains the ‘APARTMENT’ string, then saon1paonstreetn1=ADD12C
Matching rule 158For flats/maisonettes, if SAON contains the ‘APARTMENT’ string, then saon1paonstreetn2=ADDC3
Matching rule 159For flats/maisonettes, if SAON contains the ‘APARTMENT’ string, then saon1paonstreetn2=ADD12C1
Matching rule 160For flats/maisonettes, if SAON contains the ‘APARTMENT’ string, then saon2paon61street=ADD12C
Matching rule 161For flats/maisonettes, if SAON contains the ‘APARTMENT’ string, then saon2paonstreetn3=ADDC
Matching rule 162For flats/maisonettes, if SAON contains the ‘APARTMENT’ string, then saon2paonstreetn3=ADD12C
Matching rule 163For flats/maisonettes, if SAON containing the ‘APARTMENT’ string and paon does not start with numbers in PPD, saon2paonstreetn2=ADDC
Matching rule 164For flats/maisonettes with SAON contains the ‘APARTMENT’ string and PAON does not start with number characters, then saon2paonstreetn2=ADD12C
Matching rule 165For flats/maisonettes, if SAON contains the ‘APARTMENT’ string, then saonn2paonn1=ADDC
Matching rule 166If SAON contains the ‘APARTMENT’ string, then saonpaon62street=ADD12C
Matching rule 167If SAON contains the ‘APARTMENT’ string, then saon1paonstreet6n1=ADD12C
Matching rule 168If SAON contains the ‘APARTMENT’ string, then saon2paonstreetn=ADD12C
Matching rule 169If SAON contains the ‘APARTMENT’ string, then saonn3paonnstreet=ADD13C
Matching rule 170If SAON contains the ‘APARTMENT’ string, then saonn2paonn1streetn=ADDC
Matching rule 171For flats/maisonettes, if SAON contains the ‘APARTMENT’ string, then paon62saonpstreet=ADDREC
Matching rule 172If SAON contains the ‘APARTMENT’ string, then saonpaon62streetn1=ADDC
Matching rule 173If SAON contains the ‘APARTMENT’ string, then saon1paonstreet6n=ADD12C
Matching rule 174For flats/maisonettes, if SAON contains the ‘APARTMENT’ string, then saon2paonstreetn4=ADDC
Matching rule 175For flats/maisonettes, if SAON contains the ‘APARTMENT’ string, then saon2paonstreetn4=ADD12C
Matching rule 176For flats/maisonettes, if SAON contains the ‘APARTMENT’ string, then saon2paonstreetn4=ADD1num2
Matching rule 178For flats/maisonettes, if SAON contains the pattern of ‘APARTMENT’ string followed a uppercase letter, then paonsaon2streetn=ADD1C
Matching rule 179For flats/maisonettes, if SAON contains the ‘APARTMENT’ string, then saon2paonstreetn2=ADD13C
Matching rule 180If SAON contains the ‘APARTMENT’ string, then saonpaon66street=ADDC6
Matching rule 181For flats/maisonettes, if SAON contains the ‘APARTMENT’ string, then saon1paonstreetn3=ADD12C
Matching rule 182For flats/maisonettes, if SAON contains the ‘APARTMENT’ string, then saon2street=ADDC
Matching rule 183If SAON contains the ‘APARTMENT’ string in PPD, then saon1paonstreet=ADDRE
Matching rule 184For flats/maisonettes, if SAON contains the ‘APARTMENT’ string, then saon2paonlo=ADDRE
Matching rule 185If SAON contains the ‘APARTMENT’ string, then saon1paon=ADD12
Matching rule 186For flats/maisonettes, if SAON contains the ‘APARTMENT’ string, then saon1paon61street=ADD12
Matching rule 187For detached, semi-detached and terrace houses, if SAON contains the ‘APARTMENT’ string, then saon2paonstreet=ADD12
Matching rule 188For flats/maisonettes, if SAON contains the ‘APARTMENT’ string, then saon1paon1=ADD1C9
Matching rule 189For flats/maisonettes, if SAON contains the ‘APARTMENT’ string, then saon1paonstreetn2=ADD12C2
Matching rule 190For flats/maisonettes, if SAON contains the ‘APARTMENT’ string, then psaonpaonstreet=ADDREC
Matching rule 191For flats/maisonettes, if SAON contains the ‘APARTMENT’ string, then saon2paon62street=ADD12
Matching rule 192If SAON in PPD contains the ‘APARTMENT’ string and the ADD2 in EPC contains a string pattern of hyphenated numbers, then saon2paonstreet=ADD1262
Matching rule 194For flats/maisonettes, if PAON does not contains commas, then flsaonpaonstreet=add1f61f2
Matching rule 195If PAON starts with number characters and SAON ends with the string pattern of ‘FLAT’ string followed by an uppercase letter, then psaon8street=ADDREC
Matching rule 197For detached, semi-detached and terrace houses, saonstreet=ADDRE
Matching rule 199If SAON starts with number characters, unsaonpaonstreet2=ADDRE
Matching rule 204For flats/maisonettes, if SAON contains 'FLAT' string, then saonpaonstreet3=fladd
Matching rule 209For street in PPD is null, paonlo=ADD12
Matching rule 213For flats/maisonettes, if SAON contains the ‘APARTMENT’ string, then saonpaonstreet5=apadd1632
Matching rule 215For flats/maisonettes, if PAON does not start with number characters, then saonpaon61xstreet=ADD1262C, then keep paon62 contains a string pattern of hyphenated numbers
Matching rule 216For flats/maisonettes, if PAON does not start with number characters, then saonpaon61street=ADD1262C, then keep add261 contains a string pattern of hyphenated numbers
Matching rule 220For flats/maisonettes, if SAON contains a hyphen and PAON starts with number characters, then saonpaonstreet1=add1f61f3
Matching rule 221For flats/maisonettes, if SAON contains a hyphen and PAON starting with number characters and ADD in EPC data contains a hyphen, saonpaon62street=ADDRE
Matching rule 224For flats/maisonettes, if SAON contains the ‘FLAT’ string, then saon4paonstreet=ADD12
Matching rule 225For flats/maisonettes, if SAON contains a hyphen, saonpaon61street1=ADD1263
Matching rule 231If flats/maisonettes, if PAON does not start with number characters but contains numbers and commas, then if saonstreet=ADD1265, keep the results for the postcode having the same add2.
Matching rule 233For flats/maisonettes, if PAON contains a hyphen, saonpaon61=ADD12
Matching rule 239For flats/maisonettes, if SAON contains the ‘APARTMENT’ string and PAON does not start with number characters, saonstreet=ADDC5
Matching rule 241Having corrected the mismatched address strings in EPC or PPD, then saonpaonstreet2=ADDRE
Matching rule 249For flats/maisonettes, if PAON does not start with number characters in PPD and ADD in EPC does not contain a hyphenated number string, saon4paonstreetn1=ADDC4

1In this column, variables on the left side of the symbol (=) refer to address fields in the LR-PPD, variables on the right side of the symbol (=) refer to address fields in the Domestic EPCs. Symbol (=) refers to string matching function.

### Author and article information

###### Journal
UCL Open Environ
UCLOE
UCL Open Environment
UCL Open Environ
UCL Press (UK )
2632-0886
27 May 2021
2021
: 2
###### Affiliations
[1 ]Centre for Advanced Spatial Analysis (CASA), University College London, 90 Tottenham Court Road, London W1T 4TJ, UK
###### Author notes
*Corresponding author: E-mail: bin.chi.16@ 123456ucl.ac.uk
###### Article
10.14324/111.444/ucloe.000019
dd176938-6cff-4199-b120-f3b56b3dbd54