Schedule and Materials

There are two ways to progress through this material, depending upon how much time you have to devote to it each week.

  1. If you are self-paced with at least 10 hours a week to devote to learning R, or if you are teaching graduate students, I’d recommend adopting the schedule below, which is designed for an intense but doable semester-long course, one module per week.  It is intended to take the average graduate student roughly 10 hours per week to complete all required tasks.  However, some number of students will find programming to be more challenging and may take up to 15 hours per week.  Some will breeze through the material in 5.
  2. If you are self-paced with limited free time or teaching undergraduate students , you can take a more relaxed pace by alternating weeks: in the first week in each pair, complete the DataCamp materials, and in the second week, complete the project.  If you are teaching undergraduates for a single semester, I suggest taking this approach but skipping modules 6 and 10-13.

Modules 1 – 6 are fundamental R programming.  Modules 7 – 9 are traditional social scientific statistical analyses and visualization.   Modules 10 – 14 are new data science skills.

If you’d like to be kept in the loop on updates to this material, including the release of an advanced course, please consider joining my lab’s Google group/email newsletter.

You can view video content by either watching the entire set of videos currently available or by clicking on individual video links below.  Be sure to watch in high definition (HD; 720p or 1080p) to see text clearly.

Module Topic DataCamp and Readings Lecture Project Debriefing
1 Introduction and Software Reading: You Say Data, I Say System

Module 1 Video

Module 1a PDF

 None  None
2 Data Types and Basic Variable Manipulation

Course: Introduction to R

Reading: Designing Projects

Module 2 Lecture Video

Module 2 PDF

Module 2 Project

Data for Module 2

 Module 2 Debriefing Video
3 Conditionals, Loops, and Apply Course: Intermediate R
Course: Intermediate R – Practice

Reading: Using apply, sapply, lapply in R

Module 3 Lecture Video

Module 3 PDF

Module 3 PDF

Data file for Module 3

 Module 3 Debriefing Video
4 Data Import and Formatting Course: Importing Data in R, Part 1 modules:

  • Importing data
  • readr & data.table

Course: Cleaning Data in R

Reading: data.table vs dplyr

Module 4 Lecture Video

Module 4 PDF

Module 4 PDF

Data file for Module 4

 Module 4 Debriefing Video
5 Data Manipulation Course: Data Manipulation with dplyr in R
Course: Joining Data with dplyr in R
Module 5 Lecture VideoModule 5 PDF

Module 5 PDF

Data files for Module 5

Module 5 Debriefing Video
6 String Manipulation Course: String Manipulation in R with stringr
Course: RegexOne (not DataCamp)

Reading: Demystifying RegEx

Module 6 Lecture VideoModule 6 PDF

Module 6 PDF

Data file for Module 6

Module 4 Debriefing Video
7 Data Visualization Courses: Data Visualization with ggplot2:

Reading: Data Visualizations That Will Blow Your Mind

Module 7 Lecture VideoModule 7 PDF Module 7 PDF Module 4 Debriefing Video
8 Analysis of Variance

Course: Analysis of Variance (ANOVA)

Course: Repeated-measures ANOVA

Reading: Quick-R ANOVA Guide

Reading: Personality Project ANOVA Guide

Module 4 Lecture VideoModule 8 PDF Module 8 PDF Module 8 Debriefing Video
9 General and Generalized Linear Model

Course: Correlation and Regression

Course: Multiple and Logistic Regression

Reading: Why ANOVA and Linear Regression are the Same

Module 9 Lecture VideoModule 9 PDF Module 9 PDF Module 9 Lecture Video
 10 Generating Reports and Web Apps Course: Communicating with Data in the Tidyverse:

  • Introduction to RMarkdown
  • Customizing your RMarkdown report

Reading: Advantages of Using R Notebooks for Data Analysis

Module 9 Lecture VideoModule 10 PDF Module 10 PDF Module 9 Lecture Video
11 Web Scraping and APIs

Course: Working with Web Data in R

Reading: Internet Scraping for Research

Module 9 Lecture VideoModule 11 PDF Module 11 PDF Module 9 Lecture Video
12 Machine Learning

Course: Machine Learning Toolbox

Reading: Machine Learning vs. Statistics

Reading: Statistics vs. Machine Learning: Fight!

Reading: The Actual Difference Between Statistics and Machine Learning

Module 9 Lecture VideoModule 12 PDF  Participate in a Kaggle Competition
13 Natural Language Processing

Course: Text Mining: Bag of Words

Course: Sentiment Analysis in R: The Tidy Way module:

Reading: Words as Vectors

Module 13 PDF Module 13 PDF Coming Next Course Refresh

You can also download a sample final exam here, which is intended to take 2-3 hours, and a sample final project, which is intended to take a week.

Once you have completed the course, if you still have your Datacamp.com subscription, you might also consider taking their course on Python for R Users to learn about the differences and similarities between these two most common programming languages used for data science.

Would you like to be emailed when new videos are made available?  If so, please submit your email address here: