Stat 428: Statistical Computing

Fall 2020


Shulei Wang (shuleiw at illinois dot edu)


Yifan Chen (yifanc10 at illinois dot edu)

Xiang Cui (xiangc5 at illinois dot edu)

Course Website: Compass2g and Piazza (If you do not have access, contact to get your access issues resolved.)

Office Hours:

Monday 4-6pm (CST) by Xiang Cui

Tuesday 3-5pm (CST) by Yifan Chen

Tuesday, Thursday 9-10am (CST) by Shulei Wang

Course Overview

Computational data analysis is an essential part of modern statistics. This course is designed to help students develop programming skills and new computational tools for real data analysis. Through this course, students will learn the core ideas of statistically-oriented programming and how to debug and test their code. This course also covers the design of stochastic simulations experiment, Monte Carlo methods, resampling methods, statistical model fitting, large data sets manipulation and basic data visualization. This course will make a balance between programming skill training and real data analysis with examples. We will make use of the statistical computing software R in class and on homework assignments. Extensive R programming background is not required.


  • The Art of R Programming: A Tour of Statistical Software Design, by Norman Matloff (Required)

  • Statistical Computing with R, by Maria L. Rizzo (Required)

  • R for Data Science, by Hadley Wickham & Garrett Grolemund (Required)

  • The R Cookbook, by Paul Teetor (Optional)

  • The R Graphics Cookbook, by Winston Chang (Optional)

  • R Markdown Cookbook, by Yihui Xie, Christophe Dervieux, Emily Riederer (Optional)

Topic Outline

  1. R and data structure

  2. R Markdown, indexing and iteration

  3. Data frame and vectorization

  4. Functions and objective-design

  5. Testing and debugging

  6. Plotting

  7. Simulation

  8. Resampling methods

  9. MCMC

  10. Optimization and numerical methods

  11. Read and write data in R

  12. Fit the model

  13. Tidyverse and versional control

  14. Make own R package



  • Weekly quiz (20%): The lowest score will be dropped.

  • Homework assignments (30%): There are totally 4 assignments.

  • Final project (50%) : Presentation (20%) and report (30%)