How This Model Works
Input Features (normalised 0–1)
- TP01 Satisfaction — overall satisfaction percentage
- Complaints —
CH01_1(Stage 1 complaints count) - Arrears Rate —
current_arrears / rents × 100 - Cost per Unit —
management / units
Step 1 — Normalisation
Each feature is min-max normalised across all organisations: (value − min) / (max − min). This creates a 4-dimensional vector per org.
Step 2 — K-Means Clustering (k=4)
The algorithm randomly initialises 4 cluster centroids, then iterates:
- Assign each org to the nearest centroid (Euclidean distance in 4D space)
- Recalculate centroids as the mean of assigned members
- Repeat until assignments stabilise (max 50 iterations)
This runs 10 times with different random seeds. The run with the lowest total within-cluster distance is selected.
Step 3 — Auto-Labelling
Each cluster is labelled based on its average TP01 and cost per unit relative to sector averages:
- Efficient & Stable — above-avg satisfaction, below-avg cost
- High Satisfaction — above-avg satisfaction, above-avg cost
- High Cost / Low Satisfaction — below-avg satisfaction, above-avg cost
- Under Pressure — below-avg satisfaction, below-avg cost
Data Requirements
Organisations must have valid TP01, unit count, and rents. Minimum 4 organisations required.