Skip to content

lewisbails/real-estate

Repository files navigation

Causal Inference For Real Estate in Adelaide

pytest style

In this study, we aim to estimate the causal effect of the number of bedrooms, number of bathrooms, location, and dwelling type on the weekly rental asking price for properties in Adelaide.

Faced with significant covariate imbalance, simply controlling for confounding variables (e.g. in a OLS regression model) can lead to effect estimates that are sensitive to model specification. Exact matching aims to eliminate this imbalance altogether, but can lead to discarding a large number of observations. This results in not only imprecise treatment effect estimates (larger standard errors), but more importantly in a sample that is not reflective of the population! In this study, we opt for coarsened exact matching, which has the effect of monotonically reducing multidimensional covariate imbalance whilst also maintaining a reasonably-sized and representative sample.

Setup

poetry install

Data

An ETL pipeline is run daily to scrape rental listings from various online real estate portals, transform them into a standard Listing format, and store them in a NoSQL database (MongoDB). The pipeline can be ran manually as below:

poetry run python pipelines/domain_listings.py \
--uri <MONGODB URI> \
--db <DB NAME> \
--collection <COLLECTION NAME> \
--url <DOMAIN URL>

Statistics

Since 23-10-23:

council count average rent max rent min rent average bedrooms max bedrooms average bathrooms max bathrooms
Town Of Gawler 7 412 460 360 3 3 1 2
City Of Playford 93 490 750 270 3 5 2 4
City Of Salisbury 55 510 900 280 3 4 1 3
City Of Port Adelaide Enfield & City of Tea Tree Gully 3 517 600 430 2 3 1 1
City Of Onkaparinga 45 522 680 345 3 5 1 2
City Of Port Adelaide Enfield 88 531 950 50 3 4 1 3
City Of Tea Tree Gully 34 539 850 400 3 4 1 2
City Of West Torrens 53 551 900 310 3 5 1 3
City Of Marion 66 562 1050 250 3 8 1 2
Mount Barker District Council 22 565 1200 410 3 5 2 2
Corporation Of The City Of Adelaide 63 570 1400 300 2 4 1 3
City of Prospect & City Of Port Adelaide Enfield 10 573 700 440 3 4 2 2
City Of Campbelltown 30 583 800 300 3 4 1 2
City Of Charles Sturt 91 630 1500 350 3 5 2 3
City Of Mitcham 26 638 1200 370 3 6 1 3
Light Regional Council 1 650 650 650 4 4 2 2
Adelaide Hills Council 20 650 1400 420 3 5 2 3
Corporation Of The Town Of Walkerville 5 655 925 480 3 4 1 3
City Of Norwood Payneham & St Peters 50 673 3000 350 3 5 1 3
Corporation Of The City Of Unley 41 675 2000 300 3 4 1 4
City Of Prospect 4 678 1200 400 2 3 2 2
City Of Holdfast Bay 34 699 1400 430 3 5 2 3
City Of Burnside 41 714 2300 280 3 5 2 3

Results

Bedrooms

Regression


WLS Regression Results
Dep. Variable: price R-squared: 0.299
Model: WLS Adj. R-squared: 0.298
Method: Least Squares F-statistic: 404.3
Date: Fri, 20 Oct 2023 Prob (F-statistic): 3.57e-75
Time: 06:52:28 Log-Likelihood: -inf
No. Observations: 950 AIC: inf
Df Residuals: 948 BIC: inf
Df Model: 1
Covariance Type: nonrobust
coef std err t P>|t| [0.025 0.975]
constant 239.9474 14.135 16.976 0.000 212.208 267.687
bed 98.8725 4.917 20.107 0.000 89.223 108.523
Omnibus: 521.272 Durbin-Watson: 1.961
Prob(Omnibus): 0.000 Jarque-Bera (JB): 20393.910
Skew: 1.842 Prob(JB): 0.00
Kurtosis: 25.397 Cond. No. 13.2


Notes:
[1] Standard Errors assume that the covariance matrix of the errors is correctly specified.

Conclusions

Bedrooms

For rental properties in Adelaide, each additional bedroom will add, on average, $98 a week. This estimation is independent of dwelling type, location, bathrooms and parking spaces.

About

No description, website, or topics provided.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published