Skip to content

ali0003433/predict-by-issue-prioritization

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

136 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Employing issue prioritization to predict voting behavior

This project uses voters' prioritization of political issues to predict their 2016 Presidential vote choice.

-- Project Status: Completed

Project Overview

I use likert scale ratings of issue importance to predict an individual's 2016 vote. The data comes from a bipartisan foundation, the Democracy Fund, and uses complex survey design to represent the U.S. registered voter population.

App GIF

Technologies/Libraries

  • CSS
  • Flask
  • Jupyter
  • Heroku
  • HTML
  • Matplotlib
  • NumPy
  • pandas
  • pickle
  • Python
  • random
  • Regular expressions
  • scikit-learn
  • seaborn
  • SMOTE (Synthetic Minority Oversampling Technique)
  • weightedcalcs

Getting Started

  1. Clone this repo (for help see this tutorial).

  2. Raw Data is kept here

  3. Data dictionary and description of survey methodology can be found here

  4. Notebooks are kept here:
    0 - Topic Selection notebook is kept here
    1 - Preprocessing notebook is kept here
    2 - Exploration notebook is kept here
    3 - Model selection notebook is kept here

  5. Source code is kept here

  6. Repo for Flask web app can be found here

Process

Cross-Industry Standard Process for Data Mining (CRISP-DM)

  • Business understanding: Research political campaign data and predictive election models.
  • Data understanding: Explore and visualize Voter Study Group data. Read reports that have been written by others using this dataset.
  • Data preparation: Eliminate unnecessary features then convert needed features to dummy variables. Use SMOTE to oversample minority class.
  • Modeling: Compare Random Forest, Logistic Regression, Support Vector Machines, K-Nearest Neighbors.
  • Evaluation: Create custom metric and evaluate multiple models with those metrics, iteratively. Use grid search and cross validation to tune parameters.
  • Deployment: Deploy web app to heroku using Python, Flask, HTML/CSS.

Deliverables

Contact

About

This project uses an individual's rating of issue importance for seven issues to predict their 2016 Presidential vote.

Resources

License

Stars

2 stars

Watchers

1 watching

Forks

Releases

No releases published

Packages

 
 
 

Contributors