Skip to content

Repository files navigation

title



Typing SVG


Python Pandas Jupyter Tableau


Status Domain Dashboards Notebooks Data Sources Customers


An end-to-end Business Intelligence project transforming raw banking data into strategic insights β€” covering customer segmentation, transaction behavior, fraud monitoring, loan portfolio health, branch operations, and complaint management across 1,50,000+ customers.



πŸ“Š Project at a Glance

πŸ‘₯ Customers 🏦 Accounts πŸ’³ Transactions 🏒 Dashboards
1,50,000 2,40,000 20L+ 3

πŸ“Œ Table of Contents


🎯 Business Problem

Modern banks generate millions of records across customers, accounts, transactions, loans, cards, branches, and complaints. Without proper analytics, it becomes difficult to understand customer behavior, monitor business performance, identify operational bottlenecks, detect fraud, and support strategic decision-making.

This project answers critical business questions that banking leadership needs:

β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”
β”‚                                                                             β”‚
β”‚  πŸ’Ό Who are the bank's most valuable customers?                            β”‚
β”‚  πŸ’° Which customer segments maintain the highest balances?                 β”‚
β”‚  πŸ‘₯ How do customers behave across different age groups and occupations?   β”‚
β”‚  πŸ’³ Which transaction channels generate the most activity?                 β”‚
β”‚  🚨 Are fraud patterns changing over time?                                 β”‚
β”‚  🏠 Which loan types carry the highest financial exposure?                 β”‚
β”‚  🏒 Which branches process the highest transaction volume?                 β”‚
β”‚  πŸ“‹ Which complaint types require immediate operational improvements?      β”‚
β”‚                                                                             β”‚
β””β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”˜

🎯 Project Objectives

  • βœ… Clean and prepare 9 raw banking datasets for analysis
  • βœ… Build a Star Schema data model connecting all 9 CSV files
  • βœ… Perform deep Exploratory Data Analysis (EDA) across 6 notebooks
  • βœ… Identify customer behavior patterns and financial trends
  • βœ… Analyze transaction, fraud, merchant, branch, and loan performance
  • βœ… Evaluate complaint handling and operational efficiency
  • βœ… Build 3 interactive, multi-dimensional Tableau dashboards for business users

πŸ—„οΈ Data Architecture

Star Schema Model

                         β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”
                         β”‚   dim_date.csv   β”‚
                         β”‚  (Date Dimension)β”‚
                         β””β”€β”€β”€β”€β”€β”€β”€β”€β”¬β”€β”€β”€β”€β”€β”€β”€β”€β”€β”˜
                                  β”‚
 β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”   β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β–Όβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”   β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”
 β”‚ dim_customers    β”‚   β”‚                        β”‚   β”‚  dim_merchants   β”‚
 β”‚ .csv             β”œβ”€β”€β”€β–Ί  fact_transactions.csv  ◄────  .csv           β”‚
 β”‚ (Customer Dim)   β”‚   β”‚  (Central Fact Table)  β”‚   β”‚  (Merchant Dim)  β”‚
 β””β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”˜   β””β”€β”€β”€β”€β”€β”€β”€β”€β”€β”¬β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”˜   β””β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”˜
                                  β”‚
 β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”   β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β–Όβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”   β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”
 β”‚ dim_accounts     β”‚   β”‚   fact_loans.csv       β”‚   β”‚  dim_branches    β”‚
 β”‚ .csv             β”œβ”€β”€β”€β–Ί   fact_complaints.csv   ◄────  .csv           β”‚
 β”‚ (Account Dim)    β”‚   β”‚   (Supporting Facts)   β”‚   β”‚  (Branch Dim)    β”‚
 β””β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”˜   β””β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”˜   β””β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”˜
 β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”
 β”‚  dim_cards.csv   β”‚
 β”‚  (Card Dim)      β”‚
 β””β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”˜

Dataset Summary

# Dataset Key Fields Purpose
1 dim_customers.csv Customer ID, Segment, Age, Occupation, Risk Category, Credit Score, Income Customer profiling & segmentation
2 dim_accounts.csv Account ID, Account Type, Current Balance, Avg Monthly Balance, Status Account performance analysis
3 fact_transactions.csv Transaction ID, Amount, Channel, Type, Status, Fraud Flag, Merchant Transaction & fraud analytics
4 fact_loans.csv Loan ID, Type, Amount, EMI, Interest Rate, Status (Active/Closed/Default) Loan portfolio health
5 dim_branches.csv Branch ID, Name, City, Region, Zone, Manager, Employee Count Branch performance benchmarking
6 dim_cards.csv Card ID, Card Type, Card Status, Fee Waived, Annual Fee Card product analytics
7 dim_merchants.csv Merchant ID, Category, City Merchant category analysis
8 fact_complaints.csv Complaint ID, Type, Status, Channel, Resolution Days Complaint SLA monitoring
9 dim_date.csv Date, Month, Quarter, Year Time-based trend analysis

πŸ› οΈ Tech Stack

Layer Technology Purpose
Language Python Data cleaning & analysis
Data Processing Pandas NumPy Data cleaning & transformation
Visualization (Python) Matplotlib Seaborn EDA charts & statistical plots
BI Dashboards Tableau Interactive business dashboards
Environment Jupyter VS Code Development & notebooks

πŸ“‚ Project Structure

πŸ“¦ Banking-Analytics-Project/
β”‚
β”œβ”€β”€ πŸ“ Data/
β”‚   β”œβ”€β”€ πŸ“‚ Raw Data/                         ← Original banking CSV files
β”‚   └── πŸ“‚ Cleaned Data/                     ← Cleaned datasets ready for analysis
β”‚
β”œβ”€β”€ πŸ“ Python/
β”‚   β”œβ”€β”€ πŸ““ 01_Data_Understanding.ipynb       ← Dataset exploration & initial assessment
β”‚   β”œβ”€β”€ πŸ““ 02_Data_Cleaning.ipynb            ← Data cleaning & preprocessing
β”‚   β”œβ”€β”€ πŸ““ 03_Customer_Account_EDA.ipynb     ← Customer & account exploratory analysis
β”‚   β”œβ”€β”€ πŸ““ 04_Transaction_EDA.ipynb          ← Transaction & fraud analysis
β”‚   β”œβ”€β”€ πŸ““ 05_Loan_Complaint_Branch_EDA.ipynb← Loan, complaint & branch analysis
β”‚   └── πŸ““ 06_Business_Insights.ipynb        ← Key business insights & recommendations
β”‚
β”œβ”€β”€ πŸ“ Tableau/
β”‚   β”œβ”€β”€ πŸ—‚οΈ Banking_Analytics_Dashboard.twbx  ← Tableau workbook
β”‚   └── πŸ“ Dashboard Images/                 ← Dashboard preview images
β”‚
└── πŸ“„ README.md

πŸ“Š Exploratory Data Analysis

6 Jupyter Notebooks covering the complete analytics workflow β€” from understanding raw data to generating business insights.

πŸ““ Notebook 1 β€” Data Understanding

Key Questions Answered:

  • What datasets are included in the project?
  • What is the structure of each dataset?
  • What are the data types and column descriptions?
  • How many records and features are available?
  • Which columns contain missing values?
  • What data quality issues need to be addressed before analysis?
πŸ““ Notebook 2 β€” Data Cleaning

Key Tasks Performed:

  • Removed duplicate records
  • Handled missing values
  • Corrected inconsistent data formats
  • Standardized categorical values
  • Converted date columns to appropriate formats
  • Optimized data types for analysis
  • Exported cleaned datasets for EDA and Tableau
πŸ““ Notebook 3 β€” Customer & Account Analysis

Key Questions Answered:

  • What is the gender distribution of customers?
  • Which age groups dominate the customer base?
  • Which occupations are most common?
  • How are customers distributed across income brackets?
  • Which customer segments maintain the highest balances?
  • Which account types (Savings, Current, Credit) are most common?
  • How are customers distributed across different risk categories?
  • Which occupations have the highest number of customers?
πŸ““ Notebook 4 β€” Transaction Analysis

Key Questions Answered:

  • How are transaction volumes trending over time?
  • Which transaction types generate the highest volume?
  • Which transaction channels are used most frequently?
  • Which merchant categories process the most transactions?
  • Which cities record the highest transaction activity?
  • How are fraud transactions changing over time?
  • What is the overall transaction completion rate?
πŸ““ Notebook 5 β€” Branch, Merchant, Complaint & Loan Analysis

Key Questions Answered:

  • Which branches process the highest transaction volumes?
  • Which merchant categories generate the highest business activity?
  • Which loan types are issued most frequently?
  • Which loan types have the highest average loan amount?
  • Which complaint types are reported most often?
  • What is the average complaint resolution time?
  • Which branches perform best across different business metrics?
πŸ““ Notebook 6 β€” Business Insights

Key Deliverables:

  • Executive summary of analytical findings
  • Customer segmentation insights
  • Transaction and fraud trends
  • Loan portfolio insights
  • Branch performance recommendations
  • Complaint management observations
  • Actionable business recommendations supported by data
---

πŸ“ˆ Tableau Dashboards


🏦 Dashboard 1 β€” Customer & Account Dashboard

6 KPI Tiles

KPI Value Insight
πŸ”΅ Total Customers 1,50,000 Full customer base size
πŸ”΅ Total Accounts 2,40,000 Avg 1.6 accounts per customer
🟒 Avg Current Balance β‚Ή92,953 Bank-wide average
πŸ”΅ Premium Customers 33,196 22% of customer base
πŸ”΄ High Risk Customers 26,430 17.6% of customer base
πŸ”΅ Total Savings Accounts 1,27,262 53% of all accounts

Visualization Sheets

Sheet Chart Type
Customer Segments Horizontal Bar
Risk Distribution Across Occupations Stacked Bar
Customer Density Highlight Table Square Heatmap
Account Types Horizontal Bar
Customer Segment Mix by Occupation Stacked Bar
Avg Balance β€” Age Group Γ— Segment Square Heatmap

πŸ’³ Dashboard 2 β€” Banking Transaction Dashboard

Focus Areas: Monthly trends, transaction types, channels, merchant categories, fraud patterns, city-wise volumes, transaction status

Sheet Chart Type
Monthly Transaction Volume Line Chart
Transaction Type Distribution Horizontal Bar
Transactions by Channel Horizontal Bar
Top 10 Merchant Categories Horizontal Bar
Top 10 Transaction Cities Bar Chart
Monthly Fraud Trend Line Chart
Transaction Status Distribution Horizontal Bar

πŸ“‹ Dashboard 3 β€” Loans, Complaints & Branch Performance

Focus Areas: Loan portfolio health, default distribution, complaint SLA, branch benchmarking

Sheet Chart Type
Loan Status Distribution Horizontal Bar
Loan Type Distribution Horizontal Bar
Average Loan Amount by Type Horizontal Bar
Complaint Status Distribution Horizontal Bar
Resolution Time by Complaint Type Horizontal Bar
Top 10 Branches by Transactions Horizontal Bar

πŸ” Key Insights

πŸ‘₯ Customer Insights

πŸ“ Regular segment is the largest (61,393 customers) but holds the lowest avg balance (β‚Ή30,278)
πŸ’Ž Premium customers (33,196) hold avg β‚Ή2,48,885 β€” 2.7Γ— the bank average
⚠️  17.6% of customers (26,430) are High Risk β€” concentrated in Self-Employed & Business Owners
🏦  Savings accounts dominate at 53% β€” cross-sell opportunity for Current/Credit products

πŸ’³ Transaction Insights

πŸ“ˆ  Transaction volume grew consistently from 2022 to 2025
πŸ’°  Deposits (14,17,776) far outpace Purchases (6,60,056) β€” savings-dominant behavior
πŸ”„  Bank Transfer is the most used channel (12,84,914 transactions)
πŸ›’  Groceries, Online Shopping, and Dining are the top merchant categories
🚨  Fraud represents a very small % of total transactions but shows rising trend

🏠 Loan Insights

πŸ“‹  Personal Loans are issued most frequently (36,106 loans)
🏠  Home Loans carry the highest avg amount (β‚Ή47,50,148) β€” largest risk concentration
⚑  Higher-risk customers show significantly greater loan default proportions
πŸ“Š  EMI increases proportionally with loan amount across all loan types

πŸ“‹ Complaint Insights

βœ…  70% of complaints (7,798 of 11,124) are successfully resolved
πŸ“ž  Phone is the primary complaint channel
🚨  Fraud & Transaction Disputes require the longest resolution times
⏱️  Resolution time is relatively consistent across standard complaint types

🏒 Branch & Merchant Insights

πŸ†  Kochi Branch 2 leads with 2,12,142 transactions
πŸ“Š  Transaction volume varies significantly across branches
πŸ’‘  Salary Credit generates high transaction value despite fewer merchant records
πŸ—ΊοΈ  Top cities: Kochi, Hyderabad, Kolkata, Jaipur, Kolkata Branch

πŸš€ Skills Demonstrated

Category Skills
Python Pandas Data Cleaning, EDA, Feature Engineering, Null Handling, Data Type Conversion
Visualization Matplotlib, Seaborn, Statistical Plotting, Chart Selection, EDA Storytelling
Tableau Multi-Dimensional Charts, Heatmaps, 100% Stacked Bars, KPI Scorecards, Highlight Tables, Calculated Fields, Table Calculations, Dashboard Layout, Action Filters, Tooltip Customization
Analytics Customer Segmentation, Risk Profiling, Fraud Analysis, Portfolio Health Assessment, Branch Benchmarking, SLA Analysis
Business Banking Domain Knowledge, Data Storytelling, Insight Communication, Decision Support

πŸ“Œ Future Improvements

  • πŸ€– Loan default prediction using Machine Learning (Logistic Regression, Random Forest, XGBoost)
  • πŸ“‰ Customer churn prediction model
  • 🚨 Real-time fraud detection pipeline
  • πŸ“ˆ Customer lifetime value (CLV) prediction
  • πŸ”„ Automated ETL workflows using Apache Airflow
  • πŸ—„οΈ Data warehouse implementation using PostgreSQL or Snowflake
  • πŸ“Š Power BI version of the dashboards for cross-platform comparison

πŸ“Έ Dashboard Preview

🏦 Customer & Account Dashboard

Dashboard 1

πŸ’³ Transaction Dashboard

Dashboard 2

πŸ“‹ Loans, Complaints & Branch Dashboard

Dashboard 3


πŸ‘¨β€πŸ’» Author

Deepanshu Gahlot

Data Analyst | Python β€’ Pandas β€’ Tableau β€’ Matplotlib β€’ Seaborn


Email GitHub Tableau LinkedIn


⭐ If this project helped you or inspired your own work, please consider giving it a Star!

About

End-to-end banking data pipeline. Built with Python, Pandas, and NumPy for processing, with interactive Tableau dashboards for financial insights

Topics

Resources

Stars

0 stars

Watchers

0 watching

Forks

Contributors

Languages