1 Welcome!

This site hosts the course curriculum for Colorado State University’s ESS 523A course: Introduction to Environmental Data Science

Set up Instructions

As your first step, please follow the instructions on the R Setup page to make sure you have all the necessary software installed on your computer before the class starts.

Goals

The broad goal of this course is to learn the data science tools and best practices for working with environmental datasets using the programming language R. Specific to the content in this website, students will learn how to:

  1. Navigate the RStudio interface and create R Markdown documents for reproducible reporting;
  2. Utilize R packages and functions to manipulate and analyze data effectively and apply data wrangling techniques using the {tidyverse} framework;
  3. Differentiate between various data types and structures within R; and
  4. Explore comparative analyses, linear regression, and trend analysis techniques to reveal patterns in data.

Approach and Expectations

This class is flipped, meaning all materials for the week ahead must be reviewed before class. To encourage this we will have weekly quizzes on pre-class content each Monday before we dive into the assignment.

So without lectures in class what do we do together? We code! This class has almost 6 hours of contact time per week, and we design lessons so that you should be able to finish your assignments in class. The flipped class allows for deeper discussion about the common pitfalls of coding and allows for collaborative work time with your fellow classmates.

Generally we will do a quick live-code review of concepts from the assignment and the pre-class materials, but more than 1 hour per class will be dedicated to you coding and working on the assignment in class.

As such, coming to class is a vital part of how you can be successful and we fully expect you to be there every day.

We also will actively encourage a collaborative coding environment where students help each other and discuss the best approach to solving various coding problems. We also hope that outside of class, you will use our Teams channel to discuss code issues!

We will always send announcements with assignments, web links, and other updates through Canvas. The course syllabus will also be posted on Canvas.

Class Schedule

All links to Primers lessons (except for R Markdown) can be found here: https://github.com/rossyndicate/primers/blob/main/README.md

All assignments are due by midnight of the specified date and are subject to change.

Week Date (Monday) Content Assignment Due Date
1 8/19

Before class: Primers Basics and R Markdown; download R and RStudio

Introduction to R, RStudio, RMarkdown

Assignment - None

N/A
2 8/26

Before class: Work with Data

Exploratory data analysis

Assignment - Exploratory Data Analysis (20 points)

9/3
3 9/2

No Class Monday 9/2! Before class Wednesday: Visualize Data

Data visualization

Assignment - Bad Plots (20 points)

9/9
4 9/9

Before class: Tidy Your Data

Introduction to statistical analysis - T-tests, ANOVA

Assignment - T-Tests and ANOVA (20 points)

9/16
5 9/16

Before class: Iterate

Simple Linear Regression

Assignment - Simple regression (20 points)

9/23
6 9/23

Before class: Write Functions

Multiple Linear Regression

Assignment - Interpreting multiple linear regression (20 points)

9/30
7 9/30

Power in Statistical Analysis and R Skills Review

Assignment - Power (20 points)

10/7
8 10/7

Intro to Git and GitHub

Assignment - First Git Repo and Pull Request (20 points)

10/14
9 10/14

Debugging

Assignment - Debugging LLM Output (20 points)

10/21
10 10/21

Iteration, Functions, API calls

Assignment - National Park Visitation (20 points)

10/28
11 10/28 Introduction to Working with Geospatial Data; Final Project Overview N/A
12 11/4

Introduction to Working with Geospatial Data (cont.)

Assignment - Geospatial Workflows (20 points)

11/11
13 11/11

Nested Modeling

Assignment - Water quality modeling (20 points)

11/18
14 11/18

Introduction to Machine Learning

Assignment - Remote sensing of water quality (20 points)

12/02
15 11/25 No Classes - Fall Break
16 12/02

Final Projects - R Markdown, Bookdown, Quarto, Shiny

Assignment - Final Project (100 points)

12/11

Additional introductory resources

If you are looking to learn even more outside of what this class offers, below are some great introductory R resources:

  • Stat 158 - Vectors, data frames, installing R, etc…

  • RStudio Materials - A series of videos, books, and more to get you started in R.

1.0.0.1 Tidyverse Introduction

  • R for Data Science - Covers all of the basic intro material, from a tidyverse perspective. As discussed, this is one way to find solutions in R, it happens to be my preferred way, but there are lots of Base R ways that work just fine!

  • Stat 159 - A CSU specific course for an intro to the tidyverse

  • R Markdown - The primary book for learning more about R Markdown and all of its quirks.

  • Cheatsheets - Short, clear documents that cover so much material from dplyr to shiny apps. Great for quick references. We find the rmarkdown and ggplot2 ones particularly useful!