100,000 messy rows to a working model.

Predicting credit scores from 100,000 messy monthly records, with four models compared.

Role
Analysis and modelling
When
May – Jun 2024
Built with
Python · pandas · scikit-learn · seaborn
Where
NeoSOFT · Data Science Intern

Credit-card fraud · outliers flagged

76.6%Accuracy
0.75Macro F1
4Models compared

The problem

Wrong data types, missing ages and loan fields, outliers, and the same customer repeated every month.

What I did

  • Cleaned per customer, not per row: gaps filled from the same customer’s other months.
  • Selected features with recursive feature elimination, then a 70/30 split.
  • Compared four models: Random Forest won at 76.6% (macro F1 0.75), ahead of Gradient Boosting at 72.3%.

What drives the score

Outstanding debt, interest rate, days past due, credit-limit changes and credit mix: the same things lenders weigh.

More work.

All case studies

Website · SEOAug 2026 – now

Website & search programme

Technical SEO, a content system and tracking that tells the truth.

For AHAMore new buyers find AHA on Google, without searching its name.

Web app · 3DSep – Oct 2026

Showroom TV app

A 3D tour, product demos and a pitch that plays itself, on one TV.

For AHAThe showroom TV now tells AHA’s story by itself, in about five and a half minutes.