Customer Experience Analytics for Ethiopian Mobile Banking Apps | Scraping, NLP sentiment & theme analysis, PostgreSQL storage, and stakeholder visualizations for CBE, BOA & Dashen Bank apps
# Ethiopian Bank App Reviews – Customer Experience Analytics
**Omega Consultancy – Week 2 Data Engineering & Analytics Challenge**
Analyzing user satisfaction for the three largest Ethiopian mobile banking apps:
- Commercial Bank of Ethiopia
- Bank of Abyssinia
- Dashen Bank
## Business Objective
Help Ethiopian banks improve customer retention and satisfaction by turning raw Google Play Store reviews into actionable insights on sentiment, recurring themes, pain points, and feature requests.
## Key Features
- Scraped 1,200+ real user reviews using `google-play-scraper`
- Sentiment analysis with DistilBERT (and VADER comparison)
- Keyword & n-gram extraction + manual + rule-based theme clustering
- Cleaned data stored in PostgreSQL with proper relational schema
- Insightful visualizations (Matplotlib/Seaborn) + stakeholder-ready recommendations
## Project Structure
```bash
Ethiopian-Bank-CX-Analysis/
├── data/ # Raw & processed CSV files
├── scripts/ # Production-ready Python scripts
│ ├── scrape_reviews.py
│ ├── preprocess_reviews.py
│ ├── sentiment_analysis.py
│ ├── theme_extraction.py
│ └── load_to_postgres.py
├── notebooks/ # Exploratory analysis & visualization
│ ├── 01_scraping_and_preprocessing.ipynb
│ ├── 02_sentiment_and_themes.ipynb
│ └── 04_final_insights.ipynb
├── sql/ # Schema + sample queries
├── .gitignore
├── requirements.txt
└── README.md
```
## Quick Start
```bash
git clone
github.com
cd fintech-app-cx-analytics
python -m venv venv && source venv/bin/activate
pip install -r requirements.txt
# 2. Download the specific spaCy model
python -m spacy download en_core_web_sm
python scripts/scrape_reviews.py # collects ~400+ reviews per bank
```
## Banks Analyzed
| Bank | App Name | Play Store Rating |
|-------------------------------|-------------------|-------------------|
| Commerci …