Skill Workshops

I prioritize service in my department, university, and broader discipline. Having co-founded (along with fellow graduate student William Holtkamp) the UNC Chapel Hill Sociology’s Computational Social Science Workshop, I have led skill based lessons on web scraping, textual analysis, and optical character recognition and image editing in R and Python. Our lessons are targeted to social scientists with introductory expertise in programming.
Below are several embedded YouTube recordings of our workshops, with code available on Github.

Introduction to Image Editing and Optical Character Recognition in R

This lesson helps viewers learn how to edit images using R’s Magick package. We then learn how to convert images into textual data using the Tesseract Optical Character Recognition engine in R. We troubleshoot challenges and share best practices.

Text Analysis for Social Theory: Using Dictionary and Unsupervised Machine Learning in R

This lesson helps viewers comprehend and apply natural language processing for building social theory. We learn how to process textual data using Tidyverse and Stringr packages. We then introduce a suite of “Bag-of-Words” computational methods (sentiment analyses, named entity recognition, and topic modeling). We end on a note of best practices to validate findings.

Web Scraping Workshop Sessions

Co-led with William Holtkamp, these series of lessons introduce viewers to web scraping practices using Python and Selenium. No background in programming is required. We start with learning how to install Anaconda and opening up your first Selenium webdriver browser in Python. We then move towards learning how to interact with web elements for data collection and how to troubleshoot problems that come up. We end on best practices on how to scale up web scraping in systematic ways. Click here to access playlist of web scraping workshop sessions (5 videos)

  • Session #1: Anaconda Installation and Opening up your First Selenium Webdriver
  • Session #2: Interacting with Web Elements in your Selenium Webdriver
  • Session #3: More Complex Selenium Website Interactions
  • Session #4: Best Practices on Troubleshooting Web Scraping Problems
  • Session #5: Learning How to Scale Up Web Scraping

Below is an embedded YouTube recording of our first web scraping session.