Skip to content

davedgd/r-bootcamp

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

77 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Description

The R Bootcamp (also known as “Data Wrangling in R”) provides an overview of the fundamental concepts necessary to work within the R statistical programming language. Through a series of annotated, hands-on lessons that include practice exercises, students will learn to understand the basic principles of the R language including:

  1. installing R and conducting basic operations in RStudio
  2. understanding R objects, assignment, and data types (e.g., numeric, character, logical)
  3. working with data structures (e.g., vectors, factors, data frames)
  4. using functions and packages to read and write data
  5. manipulating data
  6. basic and intermediate plotting

No prior programming experience is necessary to benefit from this course.

Note: For the Python version of this course, visit the python-bootcamp.

Table of Contents

  • Installing R and RStudio
  • The RStudio interface
  • Arithmetic operators and mathematical functions
  • Using functions and getting help
  • Relational operators
  • R data types
  • R objects and assignment operators
  • R data structures
  • R date and date-time classes
  • R packages
  • Understanding file paths
  • The working directory
  • Reading data files
  • Writing data files
  • Other ways to access data

Unit 5 (Script/HTML):

  • Descriptives
  • Subsetting
  • Merging
  • Logical operators
  • Data manipulation
  • Data restructuring

Unit 6 (Script/HTML, Example/HTML):

  • Basic (base) plotting
  • Saving plots to disk
  • Plotting with ggplot2
  • Plotting with lattice

Misc (Script/HTML):

  • Monty Hall: A Simulation-Based Example of How to Write a Function

To-Do (Work-in-Progress):

  • Add more (i.e., beyond Misc) on control-flow constructs (i.e., ?Control; if/else, for/while/repeat loops, etc.)
  • Debugging
  • Python integration via reticulate
  • Add basic string search/regular expressions
  • Flesh out dplyr discussion and explain chaining more clearly (more generally, spend more time on tidyverse?)
  • Discuss performance optimization (e.g., BLAS/LAPACK; parallel processing)