Data Science for Statisticians
Welcome to ST 558 - Data Science for Statisticians!
In this course we’ll look at common tasks done by data scientists:
- Reading in raw data and manipulating it
- Combining data sources
- Summarizing data to glean insights
- Applying common analysis methods
- Collaborating and communicating effectively
We’ll adopt the R programming language to do so and learn about using quarto, git, and github to ensure our data analysis workflow is reproducible, has version control, and can easily include collaborators.
Course Learning Outcomes
At the end of this course students will be able to
- explain the steps and purpose of programs (CO 1)
- efficiently read in, combine, and manipulate data (CO 2)
- utilize help and other resources to customize programs (CO 3)
- write programs using good programming practices (CO 4)
- explore data and perform common analyses (CO 5)
- create reports, web pages, and dashboards to display and communicate results (CO 6)
Weekly To-do List
Generally speaking, each week will have a few videos to watch, readings to do, a group meeting to have, and homework to practice the material. We’ll have some projects and exams as well. Please see the syllabus on Moodle for homework policies, and project/exam information.
Getting Help!
To obtain course help there are a number of options:
- Slack - This should be used for any question you feel comfortable asking and having others view. The TA, other students, and I will answer questions on slack. This will be the fastest way to receive a response! (See the Moodle page for how to join the space.)
- E-mail - If there is a question that you don’t feel comfortable asking the whole class you can use e-mail. The TA and I will be checking daily (during the regular work week).
- Zoom Office Hour Sessions - These sessions can be used to share screens and have multiple users. You can do text chat, voice, and video. They are great for a class like this!
Fall 2026 Course Schedule
| Week | Learning Materials | Assignments |
|---|---|---|
| Week 1 M-F 8/17-8/21 |
01 - Read - What is Data Science? 02 - Watch - Workflows & Git/GitHub Basics 03 - Read - Git & GitHub Practice 04 - Watch - R Basics 05 - Read & Watch - R projects and Connecting with Github 06 - Read & Watch - Quarto |
HW 1 (individual) due W, 8/26 Introductions due F, 8/21 |
| Week 2 M-F 8/24-8/28 |
07 - Base R Data Structures: Vectors 08 - Base R Data Structures: Matrices 09 - Base R Data Structures: Data Frames 10 - Base R Data Structures: Lists 11 - Control Flow: Logicals & if/then/else 12 - Control Flow: Loops |
HW 2 due M, 8/31 (group W, 9/2) Select meeting time by F, 8/28 |
| Week 3 M-F 8/31-9/4 |
13 - Control Flow: Vectorized Functions 14 - Writing Functions 15 - Packages 16 - Tidyverse Essentials 17 - Reading Delimited Data 18 - Reading Excel Data |
HW 3 due T, 9/8 (group W, 9/9) Team meeting 1 |
| Week 4 T-F 9/8-9/11 |
19 - Manipulating Data with dplyr 20 - Manipulating Data with tidyr 21 - Databases and Basic SQL22 - SQL Joins |
HW 4 due M, 9/14 (group W, 9/16) Team meeting 2 |
| Week 5 M-F 9/14-9/18 |
23 - Querying APIs 24 - EDA Concepts 25 - Summarizing Categorical Variables 26 - Barplots & ggplot2 Basics |
HW 5 due M, 9/21 (group W, 9/23) Team meeting 3 |
| Week 6 M-F 9/21-9/25 |
27 - Numerical Variable Summaries 28 - Numerical Variable Graphs & More ggplot2 |
Project 1 due W, 9/30 Team meeting 4 |
| Week 7 M, W-F 9/28-10/2 |
29 - Recap & Direction! 30 - apply Family of Functions31 - purrr & List Columns32 - Advanced Function Writing |
Exam Window Th-F, 10/1-10/2 HW 6 due M, 10/5 (group W, 10/7) |
| Week 8 M-F 10/5-10/9 |
33 - Introduction to RShiny 34 - Tutorials Part I 35 - Connecting the UI and Server 36 - Tutorials Part II 37 - Reactivity |
HW 7 due M, 10/12 (group W, 10/14) Team meeting 5 |
| Week 9 M-F 10/12-10/16 |
38 - Tutorials Part III 39 - Dynamic User Interfaces 40 - Flexible UI Layouts & Dashboards |
HW 8 (individual) due W, 10/21 Team meeting 6 |
| Week 10 W-F 10/21-10/23 |
41 - Sharing Apps 42 - Debugging & Useful Things 43 - Control Reactivity with isolate() |
Project 2 due W, 10/28 |
| Week 11 M-F 10/26-10/30 |
44 - Modeling Concepts 45 - Prediction & Training/Test Sets 46 - Cross Validation 47 - Multiple Linear Regression |
HW 9 due M, 11/2 (group W, 11/4) |
| Week 12 M-F 11/2-11/6 |
48 - Modeling with tidymodels49 - tidymodels Tutorial50 - LASSO Models 51 - Modeling Recap 52 - Logistic Regression Models 53 - Regression & Classification Trees 54 - Ensemble Trees |
HW 10 due M, 11/9 (group W, 11/11) Team meeting 7 |
| Week 13 M-F 11/9-11/13 |
No new material | Exam 2 window Th-F, 11/12-11/13 |
| Week 14 M-F 11/16-11/20 |
55 - Creating an API in R56 - Docker Basics 57 - Building a Docker Image 58 - Dockerizing a Shiny App |
Final project due Th 12/3 |
| Week 15 M-T 11/23-11/24 |
No new material | |
| Week 16 M-T 11/30-12/1 |
No new material |