Portfolio · Python Project

Python Analytics
& Modelling

Credit scoring, risk modelling and financial analytics using Python — Pandas, NumPy, Matplotlib and Seaborn on 1,000 loan applications.

← Back to Home
🐍 Customer Credit Scoring Model

Python · Pandas · NumPy · Matplotlib · Seaborn

Customer Credit Scoring Model

A Python-based credit scoring system built from scratch using a weighted scorecard model on 1,000 simulated loan applications. Five risk factors — payment history, debt-to-income ratio, collateral coverage, loan tenure, and income stability — are combined to generate credit scores on the industry-standard 300–850 scale with automated loan approval decisions.

597
Average Credit Score
51.9%
Decline Rate
76.9%
High DTI Customers
14.9%
Approval Rate
Key Insight

DTI ratio is the single strongest score predictor — average score drops from 719 to 529 as DTI rises. Personal loans score highest (668) vs Mortgages lowest (547). Karen city leads with 22.2% approval rate.

# Scale raw score to 300-850 range
def calculate_credit_score(row):
    score = payment_history(row) * 0.35
    score += dti_score(row) * 0.25
    score += collateral_score(row) * 0.20
    score += tenure_score(row) * 0.10
    score += income_score(row) * 0.10
    return 300 + (score / 100) * 550
Python Pandas NumPy Matplotlib Seaborn Credit Scoring Jupyter Notebook