Data Wrangling with R

A 3-Day Remote Seminar Taught by Kieran Healy, Ph.D.

Download a sample of the course materials


R is a free and open-source package for statistical analysis that is widely used in the social, health, physical, and computational sciences. R is powerful, flexible, and has excellent graphics capabilities. It also has a large and rapidly growing community of users.

Although there are a variety of approaches to working with data in R, in recent years, the “tidyverse” has emerged as a cohesive and consistent approach to the everyday tasks of data wrangling and analysis. The tidyverse is a suite of tools for data management, manipulation, analysis, and visualization within the R software environment for statistical computing. This seminar provides an intensive, hands-on introduction to using tidyverse tools for doing your own work.

Starting September 23, we are offering this seminar as a 3-day synchronous*, remote workshop. Each day will consist of a 4-hour live lecture held via the free video-conferencing software Zoom. You are encouraged to join the lecture live, but will have the opportunity to view the recorded session later in the day if you are unable to attend at the scheduled time.

Each lecture session will conclude with a hands-on exercise reviewing the content covered, to be completed on your own. An additional lab session will be held Thursday and Friday afternoons, where you can review the exercise results with the instructor and ask any questions.

*We understand that scheduling is difficult during this unpredictable time. If you prefer, you may take all or part of the course asynchronously. The video recordings will be made available within 24 hours of each session and will be accessible for four weeks after the seminar, meaning that you will get all of the class content and discussions even if you cannot participate synchronously.

Closed captioning is available for all live and recorded sessions.

More Details About the Course Content

The course is not focused on particular statistical methods or modeling techniques. Rather, we will learn how to accomplish everyday tasks that statistical analysis depends on but which are rarely taught in detail in their own right. These include topics such as getting your own data into R, exploring the structure of your data, recoding variables and reshaping tables, and presenting summary tabulations and graphs of this work.

Throughout the course we will emphasize how R and the tidyverse “thinks”. Every dataset is different, especially at the stage where it still needs further cleaning or arranging before it can be easily analyzed or effectively presented. This course will teach you the logic and implicit “flow of action” behind the tidyverse’s tools, giving you the ability to apply and extend this way of thinking when working with your own data and its particular challenges.


We will be working with the most recent stable versions of R and RStudio, as well as with a number of additional packages. You will need to install R, RStudio, and the necessary packages on your own computer.

If you’d like to take this course but are concerned that you don’t know enough R, there are excellent online resources for learning the basics. Here are our recommendations.

Who Should Register?

You should take this course if you are interested in answering questions like these:

  • How can I properly get my data into R?
  • How should I deal with different types of data?
  • How can I explore the structure of my data?
  • How can I manipulate, summarize, and tabulate my data?
  • How can I efficiently clean my data?
  • How can I reshape or reconfigure my data?
  • How can I quickly graph or report on my data?

The course does not presume any prior experience with R. However, if you are an R user and have been annoyed with questions like these:

  • How can I get these 50 CSV files into R?
  • Why can’t I get the right answer when summarizing this grouped data?
  • How can I tell R that my categorical measure is ordered?
  • How can I clean up this textual data?
  • How can I neatly calculate summary statistics for all the measures in my data?
  • How can I arrange this table to print in a nice way?
  • Why doesn’t the answer I found on Stack Overflow work properly?
  • Why does the answer I found on Stack Overflow work properly?
  • Why does R keep telling me “Object of type ‘closure’ is not subsettable”?

… then this course will be worthwhile for you, too.


Day 1

1. Tidy data and the tidyverse

  • Motivation: plain-text data analysis
  • How R works and why it got that way
  • What’s “tidy” about the tidyverse?
  • Pipelining your code
  • A first example

2. Getting your data into R with readr

  • Reading in a single table of data
  • Tibbles
  • Data types
  • Common pitfalls and problems

3. Tabulating and summarizing data with dplyr

  • Filtering, selecting, mutating, and summarizing a single table
  • Manipulating column names and arranging rows
  • Groups and the logic of working with grouped data
  • Calculating on the columns of a table, and on the rows
  • Zero counts in dplyr and other gotchas

Day 2

4. Reshaping data with tidyr

  • Moving back and forth between wide and long data
  • Splitting, separating, and recoding observations
  • Managing and visualizing missing values
  • Expanding and completing datasets

5. Managing categorical measures and textual data with forcats and stringr

  • Working with factors in R and in the tidyverse
  • Recoding and re-leveling factors
  • String manipulation, regular expressions, and stringr

6. Iterating on data with dplyr and purrr

  • Relational data in dplyr
  • Joining tables
  • Working across() columns
  • Using map() and its friends to feed your data to functions

Day 3

7. Modeling with broom

  • Extending tidy principles to models
  • Fitting and summarizing model output

8. Making it easier to be tidy

  • The janitor package helps clean your data
  • Working with the usethis and reprex helper packages

9. Managing your clean data

  • Documenting your data
  • Using a package to store your data
  • The wider world of tidyverse-friendly packages and tools

Reviews of Data Wrangling with R

“Absolutely fantastic wit, wisdom, generosity, preparation, and stunning command of the subject by the instructor. He continually connects and relates data wrangling to the “whole” – data science, data visualization and insight generation – in a way that is incredibly useful. I got a better understanding of the big picture, a way of thinking, and tons of helpful tricks and detailed info to be more effective. Among a truly outstanding faculty at Statistical / Code Horizons, Kieran Healy is a superstar teacher. He proactively anticipates and addresses the uncertainties and confusion the learner is likely to experience. I still can’t believe how much I learned in this course. Thank you. I will do my best to pay it forward.”
  Ken Coburn, Health Quality Partners

“The course discusses some problems that are often encountered by analysts in data wrangling. From the course, I learned some techniques to work efficiently in data analysis.”
  Faturachman, Bank Indonesia

“This is an excellent course! Many of my students wrestle with learning base R programming, and this course provides a very nice overview of tidyverse and core libraries that will assist students in quickly learning data cleaning, coding, and analysis in RStudio. I would highly recommend this course to students, academics, and practitioners.”
  Bryan L. Sykes, University of California-Irvine

Seminar information

Thursday, September 23, 2021 –
Saturday, September 25, 2021

Each day will follow this schedule:

10:00am-2:00pm ET: Live lecture via Zoom

4:00pm-5:00pm ET: Live lab session via Zoom (Thursday and Friday only)

Payment Information

The fee of $895 includes all course materials.

PayPal and all major credit cards are accepted.

Our Tax ID number is 26-4576270.