D-Lab Workshops

The materials here represent current and past workshops taught at the Social Sciences D-Lab.

Python Modules


I don't know anything about Jupyter, Python, or packages like Pandas. I want to start from the top!"

Python Fundamentals

The absolute basics

This three-part interactive workshop series is your complete introduction to programming Python for people with little or no previous programming experience, with a focus on data science application. It covers the basics of Python and Jupyter, variables and data types, and a gentle introduction to data analysis in Pandas.

"I know the basics of Jupyter and Python, like opening a Jupyter Notebook or assigning a variable. I want to learn more."

Python Intermediate

Building on the basics

This three-part interactive workshop series is a follow-up to D-Lab's Python Fundamentals. It is intended for people who want to learn about core structures of Python that underpin data analysis. We cover loops and conditionals, creating your own functions, analysis and visualization in Pandas, and the workflow of a data science project.

"I know the basics of Jupyter, Python, and Pandas, including loops and functions, and basic operations on DataFrames. I want to learn how to retrieve online data."

Python Web Scraping

Scrape HTML/CSS data from websites

In this workshop, we cover how to scrape data from the web using Python. Web scraping involves downloading a webpage's source code and sifting through the material to extract desired data.

Python Web APIs

Obtain data from web platforms

In this workshop, we cover how to extract data from the web with APIs using Python. APIs are often official services offered by companies and other entities, which allow you to directly query their servers in order to retrieve their data. Platforms like The New York Times, Twitter and Reddit offer APIs to retrieve data.

"I know the basics of Jupyter, Python, and Pandas. I want to learn more about data analysis and visualization."

Python Data Wrangling

Manipulate DataFrames using Pandas in Python

In this workshop, we provide an introduction to data wrangling with Python. We will do so largely with the pandas package, which provides a rich set of tools to manipulate and interact with data frames, the most common data structure used when analyzing tabular data. We'll learn how to manipulate, index, merge, group, and plot data frames using pandas functions.

Python Data Visualization

Pandas, Matplotlib, and Seaborn

In this workshop, we provide an introduction to data visualization with Python. First, we'll cover some basics of visualization theory. Then, we'll explore how to plot data in Python using the matplotlib and seaborn packages.

"I know a fair bit about Python and Pandas and want to learn more advanced topics"

Python Machine Learning

Classification, regression, clustering in Python

In this workshop, we provide an introduction to machine learning in Python. First, we'll cover some machine learning basics, including its foundational principles. Then, we'll dive into code, understanding how to perform regression, regularization, preprocessing, and classification.

Python Data Wrangling

Bag-of-words, sentiment analysis, topic modeling, word embeddings, and more

This workshop equips newcowers with the foundation for applying computational text analysis methods in their work. The focus is on high-level descriptions of what existing methods do and user-friendly implementations. We will also spend some time on interpreting results correctly.

Python Geospatial Fundamentals

Analyzing geospatial data using GeoPandas in Python

Geospatial data are an important component of data visualization and analysis in the social sciences, humanities, and elsewhere. The Python programming language is a great platform for exploring these data and integrating them into your research.

Python Deep Learning

Create and train neural networks using Tensorflow and Keras.

This workshop conveys the basics of deep learning in Python using keras on image datasets. Students are empowered with a general grasp of deep learning, example code that they can modify, a working computational environment, and resources for further study.

Featured Modules


Python Fundamentals

The absolute basics

This three-part interactive workshop series is your complete introduction to programming Python for people with little or no previous programming experience, with a focus on data science application. It covers the basics of Python and Jupyter, variables and data types, and a gentle introduction to data analysis in Pandas.

Python Data Wrangling

Manipulate DataFrames using Pandas in Python

In this workshop, we provide an introduction to data wrangling with Python. We will do so largely with the pandas package, which provides a rich set of tools to manipulate and interact with data frames, the most common data structure used when analyzing tabular data. We’ll learn how to manipulate, index, merge, group, and plot data frames using pandas functions.

Python Data Visualization

Pandas, Matplotlib, and Seaborn

In this workshop, we provide an introduction to data visualization with Python. First, we’ll cover some basics of visualization theory. Then, we’ll explore how to plot data in Python using the matplotlib and seaborn packages.