IBM Applied Data Science Capstone Project - Completed March 10, 2020 Author: Brandy Guillory
- Project Overview
- Business Problem
- Key Features
- Technologies Used
- Project Structure
- Methodology
- Results & Insights
- Installation & Setup
- Usage
- Demo
- Key Learnings
- Acknowledgments
- Contact
This capstone project demonstrates the application of data science methodologies to solve real-world marketing challenges. The project focuses on Targeted Marketing Campaign Prediction & User Behavior Analysis using machine learning techniques including K-Means Clustering, Classification, and Regression algorithms.
Marketing has evolved from traditional radio and television advertising to highly personalized, data-driven digital campaigns. This project leverages the vast amounts of user data collected daily to create more targeted and personalized advertising campaigns that improve customer experience and drive revenue generation.
Scenario: An employee at a fictitious big data marketing company, Insights LLC, has been tasked with helping a client determine ideal marketing campaigns based on user behavior in specific geographic regions.
Objective: Launch four successful marketing campaigns to:
- Increase revenue for the client
- Create more personalized experiences for target customer segments
- Identify user behavior patterns for positive and negative trends in customer satisfaction
Target Cities: Atlanta, San Francisco, and New Orleans
- Geographic Data Analysis: Web scraping and geocoding of neighborhood data from Wikipedia
- Venue Analysis: Integration with Foursquare API to retrieve venue and check-in data
- Customer Segmentation: K-Means clustering for identifying distinct customer groups
- Predictive Modeling: Classification and regression algorithms for campaign prediction
- Interactive Visualizations: Folium maps for geographic data visualization
- Data Processing: Comprehensive data cleaning and feature engineering
- Python 3.6+
- Jupyter Notebook
# Data Processing & Analysis
- pandas
- numpy
# Machine Learning
- scikit-learn (K-Means, Classification, Regression)
# Data Visualization
- matplotlib
- seaborn
- folium
# Web Scraping & APIs
- BeautifulSoup
- requests
- Foursquare API
# Geospatial Analysis
- geocoder
- geopy (Nominatim)Python_ML_Project-master/
│
├── README.md # Project documentation
│
├── Notebooks/
│ ├── Capstone-FinalProject-Notebook.ipynb # Main capstone notebook (K-Means)
│ ├── Final Capstone Project.ipynb # Classification & Regression analysis
│ ├── Applied Data Science Capstone.ipynb # Toronto neighborhood segmentation
│ ├── PythonGeocoder_Folium_Clustering.ipynb # Geocoding & clustering visualization
│ ├── PythonGeocoder.ipynb # Geocoding implementation
│ ├── Final Capstone Project - Week 4 - Foursquare - Part 1.ipynb
│ └── ML Notebook.ipynb # Initial ML exploration
│
├── data/
│ └── sfcrimedata.csv # San Francisco crime dataset
│
├── python_code.py # Python utility scripts
└── Targeted Marketing Campaign Prediction.pdf # Project presentation
- Web Scraping: Extracted neighborhood data from Wikipedia using BeautifulSoup
- Geocoding: Retrieved latitude/longitude coordinates using Nominatim geocoder
- API Integration: Collected venue data from Foursquare Places API
- Crime Data: Analyzed San Francisco crime statistics for safety insights
- Cleaned and transformed raw data
- Handled missing values and duplicates
- Feature engineering for model input
- Normalized and scaled numerical features
- Statistical analysis of neighborhood characteristics
- Venue distribution analysis
- Geographic pattern identification
- Correlation analysis between features
- Segmented neighborhoods based on venue types and characteristics
- Identified optimal number of clusters using elbow method
- Created customer personas for targeted marketing
- Predicted customer response to marketing campaigns
- Evaluated model performance using accuracy, precision, recall, and F1-score
- Forecasted campaign ROI and customer lifetime value
- Analyzed feature importance for marketing decisions
- Interactive Folium maps showing neighborhood clusters
- Heatmaps of venue distributions
- Cluster visualization with geographic overlays
- Customer Segmentation: Successfully identified 4 distinct customer segments based on geographic and behavioral patterns
- Venue Patterns: Discovered strong correlations between venue types and customer preferences
- Geographic Insights: Mapped high-value neighborhoods for targeted campaigns
- Predictive Accuracy: Achieved strong model performance for campaign prediction
- Personalized Campaigns: Data-driven approach enables customized marketing strategies
- Resource Optimization: Focus marketing spend on high-potential customer segments
- Revenue Growth: Improved targeting leads to higher conversion rates
- Customer Satisfaction: Better alignment between offerings and customer preferences
Python 3.6 or higher
pip package manager
Jupyter Notebook- Clone the repository
git clone https://github.com/bmguillo/Python_ML_Project-master.git
cd Python_ML_Project-master- Create virtual environment (recommended)
python -m venv venv
source venv/bin/activate # On Windows: venv\Scripts\activate- Install required packages
pip install pandas numpy scikit-learn matplotlib seaborn folium
pip install beautifulsoup4 requests geocoder geopy
pip install jupyter notebook- Set up Foursquare API credentials
- Sign up for a Foursquare Developer account
- Create a new app to get your API credentials
- Add credentials to your notebook environment
- Start Jupyter Notebook
jupyter notebook- Open the main capstone notebook
- Navigate to
Capstone-FinalProject-Notebook.ipynb - Run cells sequentially to reproduce the analysis
- Explore other notebooks
- Each notebook focuses on specific aspects of the project
- Follow the markdown instructions within each notebook
- Data Science Workflow: End-to-end project execution from problem definition to deployment
- Machine Learning: Practical application of clustering, classification, and regression
- Geospatial Analysis: Working with location data and mapping libraries
- API Integration: Consuming third-party APIs for data enrichment
- Business Communication: Translating technical results into business insights
- IBM Data Science Professional Certificate - Coursera
- Foursquare API - Location data and venue information
- Wikipedia - Neighborhood and geographic data
- Open Source Community - Python libraries and tools
This project is licensed under the MIT License - see the LICENSE file for details.
Brandy Guillory
- GitHub: @bmguillo
- LinkedIn: linkedin.com/in/bmguillo
- Email: bmguillo@us.ibm.com | bmg357@nyu.edu
If you found this project helpful, please consider giving it a star!
This project was completed as part of the IBM Applied Data Science Capstone course on Coursera.