Lesson Breakdown

Lesson 1

Goals:

  1. Get up and running in the lab
  2. Know what bits of infrastructure we have
  3. Introduction to R through visualization
  4. How to load your own data into R
  • Getting setup
    • Getting the shell
    • SSH keys
  • The SDAL Infrastructure
    • RStudio
    • The other tools availiable
  • Shell (Bash)
  • The “Tidyverse” ecosystem
  • Scripts and running R code
  • Exploring your data through visualizations (ggplot2)
  • Loading and saving a datasets (readr, haven)

Lesson 2

Goals:

  1. Introduction to Markdown (rmarkdown) and knitr
  • Take “pretty” notes with “simple” notation
  • Learn how to create basic reports with your code
  1. What the code projects look like
  2. Working with git locally
  • Markdown
  • Knitr
  • The project template
    • Workflow basics
  • Projects
  • Git (locally)

Lesson 3

Goals:

  1. Git with an eye towards collaboration
  2. Working with remotes (GitHub and GitLab)
  3. Collaborating with branches
  • Git (remotes)
  • Git (branches)
  • Git (collaboration)

Lesson 4

Goals:

  1. Start the process of manipulating data
  2. Perform data subsetting and aggregations
  3. Explore data with basic statistics and visualizations
  4. Reshaping data and fixing common data problems through the tidying process
  • Transform data with (dplyr)
  • Pipes (%>%)
  • Exploratory Data Analysis (EDA)
  • tibble, the tidyverse “dataframe”
  • Tidying data (tidyr)

Lesson 5

Goals:

  1. Understanding relational data
  2. Merging datasets together
  3. Work with relational data in a database
  4. Writing SQL code and how to run them from within R
  • Relational Data in R (dplyr)
  • Working with databases
    • SQLite
    • PostgreSQL
  • SQL
  • Working with SQL in your R code

Lesson 6

Goals:

  1. Work with strings, factors, and date time values in R
  • Strings
  • Factors (forcats)
  • Dates and Times

Lesson 7

  1. Programming “fundamentals”
  • Functions
  • Vectors
  • Loops

  • Functions
  • Vectors
  • Iteration
    • purrr
    • for loops

Lesson 8

Goals:

  1. The dialects of R
  2. Review of tidyverse functions
  3. How tidyverse relates to base R
  • The base R data.frame object
  • apply family of functions
  1. How data.table playes a role in the R ecosystem
  • base R
  • data.table
  • tidyverse

Lesson 9

  • Working with geospatial data with sf

Lesson 10

Goals:

  1. Web scraping
  • API
  • Scrape

Lesson 11

  • Communication
    • R Markdown
    • Graphics
  • R Markdown formats
  • Shiny