Logo Lanfrica

sentayhu19/Customer-Experience-Analytics-for-Fintech-Apps

Domain:

natural language processing

Record type:

software
Creator:
sen
Host:
Analyzing customer satisfaction with mobile banking apps by collecting and processing user reviews from the Google Play Store for three Ethiopian banks: # Customer Experience Analytics for Fintech Apps A modular and robust pipeline for analyzing customer experience and satisfaction with fintech mobile apps, focusing on Ethiopian banks: Commercial Bank of Ethiopia (CBE), Bank of Abyssinia (BOA), and Dashen Bank. ## Key Features - Automated scraping of Google Play Store reviews - Comprehensive data cleaning and preprocessing - **Rating-based sentiment mapping** for robust sentiment analysis - Extraction of key drivers and pain points using NLP - Modular, maintainable codebase (analysis, recommendations, visualization, ethics) - Insightful visualizations and actionable recommendations - Professional reporting and export capabilities ## Project Structure - `data/` — Raw and processed datasets - `notebooks/` — Jupyter notebooks for analysis and reporting - `src/` — Modular Python source code: - `analysis/` — Insights, sentiment, visualization, ethics modules - `recommendations/` — Automated improvement suggestions - `reports/` — Generated reports and figures - `tests/` — Unit tests ## Analysis Pipeline ### 1. Data Collection - Reviews are scraped from the Google Play Store using the `google-play-scraper` Python package for each bank's official app. - Each review includes: review text, rating, date, bank name, and source. ### 2. Data Cleaning & Preprocessing - **Deduplication:** Remove duplicate reviews per bank. - **Missing Data Handling:** Drop rows with missing review text, rating, or date. - **Date Normalization:** Convert all dates to ISO format (`YYYY-MM-DD`). - **Column Standardization:** Ensure columns: `review`, `rating`, `date`, `bank`, `source`. ### 3. Sentiment Mapping - **Robust Sentiment Assignment:** - Reviews are assigned sentiment labels based on their star rating to mitigate issues from typos, sarcasm, or ambiguous review text. - Mapping logic: - Ratings **4 or 5** → `positive` - Ratings **1 or 2** → `negative` - Rating **3** → `neutral` - This sentiment is stored in the `derived_sentiment` column …