Class Central is learner-supported. When you buy through links on our site, we may earn an affiliate commission.

Knight Center for Journalism in the Americas

Intro to R for Journalists: How to Find Great Stories in Data

Knight Center for Journalism in the Americas via Independent


This resource page features course content from the Knight Center for Journalism in the America's massive open online course (MOOC), titled "Introduction to R for journalists: How to find great stories in data." The five-week course took place from June 23 to August 26, 2018. We are now making the content free and available to students who took the course and anyone else who is interested in learning how to use the statistical computing and graphics language R to enhance data analysis and reporting process.

The course, which was supported by the Knight Foundation, was taught by Andrew Ba Tran. He created and curated the content for the course, which includes video classes and tutorials, readings, exercises, and more.


Introduction Module: R

In this introductory module, you will learn how to configure your computer to work with R. Before you can use it analyze data, your computer needs the following tools installed:

  • A command-line interface to interact with your computer
  • The git version control software and a GitHub account
  • The latest version of R
  • The latest version of RStudio
  • An API key from (


Module 1: Programming in R

This week you will be introduced to RStudio and learn how to start a new analysis project. You will learn the basics of how to import and explore data with R.

This module will cover:

  • A tour of the RStudio IDE
  • Syntax for coding in R
  • Creating R scripts
  • Importing packages
  • Good habits for workflow and documentation habits
  • How to import data like CSVs, Excel spreadsheets, XML
  • Exploring the data’s structure


Module 2: Wrangling data

This week you will learn how to transform and analyze data the tidy way using the dplyr package.

This module will cover:

  • Filtering, selecting, arranging, mutating, summarizing data
  • How to join two data sets for more insight
  • Chaining analyses functions with pipes for efficiency and readability


Module 3: Visualizing data

This week, you’ll learn about the grammar of graphics and how to use the ggplot2 package to make quick exploratory data visualizations.

This module will cover:

  • The aesthetics of data visualizations
  • How to create different charts like, bar, box, line, scatterplots
  • Grouping for charts
  • How to create facets or small multiples with the data
  • Labels and titles for visualizations


Module 4: Spatial analysis

This week you will learn how to visualize geographical data and look for neighborhood racial profiling disparities using Census data and traffic stop data from Connecticut.

This module will cover:

  • Creating interactive maps with the R Leaflet package
  • How to geolocate addresses in R
  • Importing and visualizing shapefiles
  • Points in a polygon analysis that merges location data and boundaries for deeper insights


Module 5: Publishing for reproducibility

This week you will learn how to use RMarkdown to present your analysis in a narrative format. You’ll also learn how to log changes to your project with version-control software and publish your analysis on the Internet.

This module will cover:

  • The git version control software and its integration with Github
  • How data journalists use GitHub and RMarkdown and other notebooks to publish their work
  • How to use the Markdown markup language to annotate RMarkdown
  • How to create a new git code repository and start tracking code
  • How to connect the repository to GitHub and publish to Github Pages



Start your review of Intro to R for Journalists: How to Find Great Stories in Data

Never Stop Learning.

Get personalized course recommendations, track subjects and courses with reminders, and more.