Skip to content
← All projects

Machine Learning & Analytics

Course group project · 2026

Housing Burden Analysis

Out of more than 1,100 candidate variables on Canadian household data, which ones actually predict whether a household is housing burdened, and do the high-risk households fall into distinct types? Elastic Net and XGBoost with SHAP to find and explain the drivers, PCA, UMAP and K-Means to separate the population into profiles.

Public dataMachine learningPython

Overview

Housing affordability is easy to describe and hard to explain: which of hundreds of household characteristics actually move the needle on housing burden? In this group project for DATASCI 3000, we started from 1,100+ candidate variables and worked toward a short list that genuinely matters.

We approached it from two angles at once — finding the drivers of housing burden, and separating households into distinct, interpretable profiles.

The problem

With over a thousand candidate variables, most modeling choices drown in noise and collinearity. The challenge was to cut through that to a defensible set of drivers — and to describe the different kinds of households experiencing housing burden rather than treating them as one undifferentiated group.

Approach

  1. 01

    Reduced dimensionality

    PCA and UMAP compressed 1,100+ variables into a workable structure and exposed the dominant axes of variation.

  2. 02

    Segmented households with K-Means

    Clustering separated households into distinct profiles, turning a single "burdened" label into interpretable groups.

  3. 03

    Identified drivers with Elastic Net and XGBoost

    A regularized linear model and a gradient-boosted model were used in tandem to surface which variables actually predict housing burden.

  4. 04

    Explained the models with SHAP

    SHAP values translated the models into ranked, human-readable drivers instead of a black box.

Selected views

Figure 01

UMAP projection of households, colored by cluster

Figure 02

SHAP driver ranking for housing burden

Figure 03

Cluster profiles across key household characteristics

PreviousCost-Effectiveness of the JAKPOT RuleNextNFL Big Data Bowl 2027