Unit 1 - Overview of R and Reproducibility
1 Overview
This section provides the detailed syllabus for the first unit of GEOG246-346: Geospatial Analysis with R (please return to the main Syllabus for a general course overview).
In this unit, we will learn the basics of working with
R
, starting with non-spatial data, as well as additional
skills related to reproducibility, which can
be loosely defined as the ability for you and others to easily
repeat the steps of your analysis. These skills include using version
control software (git
and github), creating R
packages,
and using Rmarkdown
to document and present your
analyses.
Our learning goals for this unit as are follows–by the end of this unit you should:
Understand: R’s origins and its strengths and weaknesses; the concept of reproducibility and R’s role within that; how
R
, Rstudio, GitHub, and Rmarkdown play together; R’s data type and structures, objects, classes, and environments; the evolutionary trajectories emerging in the R language.Be able to comfortably* do the following: create a
git
repo and manage it through RStudio (and its shell environment); perform and document analyses in Rmarkdown; create and document a basicR
package; read and write data inR
; use control structures (includingapply
functions, particularly for split-apply-combine operations); write a simple function; reshape, analyze (with basic statistical functions), and visualize non-spatial data; write clean code following our selected R style guide*Comfortably does not mean fluent. Fluent means you can do all of these things without having to look at past code, help files, or web-based examples to get the job done. Comfortable means that you know what you have to do, and what functions you need to do it, but 1) you probably have to look at and adapt past code and/or search help files or the web to get the exact syntax/arguments you need, and 2) you might need several iterations until it works.
2 Unit modules
This section is broken into four modules (the materials can be accessed by following the links):
Module 1: A general overview of R and an introduction to reproducibility tools.
Module 2:
Fundamental R
concepts
Module 3:
Introduction to R
programming
Module 4: Data
analysis and visualization with R
Appendix: Unit appendix