Metrics Merchant
All projects

Property Market Analysis

A Python analysis layer that pulls raw listings straight out of the collection pipeline's S3 bucket and turns them into price distributions, trends, and cross-source comparisons in Jupyter.

Pythonpandasboto3JupyterAWS S3matplotlib / seaborn

Architecture

AWS S3raw scraped listingsLoaderpandas + boto3Normalised dataone DataFrameJupyteranalysis

Problem

Raw scraped listings sitting in S3 as JSON aren't directly comparable — different sources use different field names, prices are formatted strings, and there's no shared shape to analyse across them.

Solution

A loader pulls the latest (or any historical) scrape for each source directly from S3 and normalises the fields that matter — price, bedrooms, bathrooms, property type, location — into a single pandas DataFrame that sources can be compared against.

Analysis

A Jupyter notebook explores the normalised data: price distributions, price by bedroom count, and comparisons across regions and sources — surfacing patterns like medians diverging sharply between search areas.

Extensibility

The loader keys off the same dated S3 layout the collection pipeline already writes to, so it automatically picks up new scrapes as they land each day without any changes to the analysis code.

This project is an early-stage extension of the property data collection pipeline, built to turn the collected listings into usable insight rather than just storage.