Check www.stat.wisc.edu/~jgillett/3273 for updates to this tentative syllabus.
Goals
Students will integrate R with high performance computing
tools to do scientific computing at an introductory level. Here is a
course map.
Teachers  
Name  Office Hours  Phone  Email (please use our Q&A forum for most things) 
Gillett, John  Medical Sciences Center 1223  2626197  jgillett@wisc.edu 
Li, Qing  Medical Sciences Center 1217A  qli295@wisc.edu  
TAs  
Shi, Irene  Medical Sciences Center B248  ashi6@wisc.edu  
Johnston, Liam  Medical Sciences Center 1582  ljohnston2@wisc.edu  
Class Times
Lecture 327003 (Gillett, John and TA Shi, Irene)  TuTh 9:3010:45  Sterling 3425 
Lecture 327006 (Qing, Li and TA Johnston, Liam)  TuTh 1:002:15  Sterling 3425 
Prerequisite
STAT 327: Intermediate Data Analysis with R 
Textbook
No textbook is required. We'll provide course notes, and we'll read R documentation and write R code. 
Optional Online Reading
R for Data Science by Garrett Grolemund and Hadley Wickham 
Advanced R by Hadley Wickham 
An Introduction to R (pdf) by W. N. Venables, D. M. Smith and the R Development Core Team 
Intro to R video lectures by Google Developers 
R Programming wikibook 
Using
R for Data Analysis and Graphics by
J. H. Maindonald 
The R Inferno by Patrick Burns 
Optional Reference Books
R for Data Science by Garrett Grolemund and Hadley Wickham 
Advanced R by Hadley Wickham 
Introductory Statistics with R by Peter Dalgaard (2008) 
R in a Nutshell by Joseph Adler (2009) 
A Beginner's Guide to R by Alain F. Zuur, Elena N. Ieno, and Erik Meesters (2009) 
Software for Data Analysis: Programming with R by John Chambers (2008) (advanced) 
Modern Applied Statistics with S by W.N. Venables and B.D. Ripley (2002) 
Computing
A laptop is required in class.
Help
Many questions outside of class should be posted at
our Q&A
forum. Please feel free to write answers when you know
them. We are eager to help in class and office hours too.
Grades
These points are available (we might revise this as we write course materials):
≈ 3 R scripts or projects  ≈ 80 
group practice exercises  ≈ 20 
Total  100 
We'll assign grades according to the percentage scale, A = [92,100], AB = [88,92), B = [82,88), BC = [78,82), C = [70,78), D = [60,70), F = [0,60) (92% of points => A); and according to the percentile scale, A = 70, AB = 60, B = 45, BC = 30, C = 10, D = 5, F = 0 (performing better than 70% of the class => A). Your grade will be the higher of these two grades.
If you anticipate religious or other conflicts with course requirements, or if you require accomodation due to disability, you must notify us during the first two weeks of class. You may not make up missed quizzes, homework, or exams, except in the rare case of a documented, serious problem beyond your control.
We encourage you to discuss the course, including the online quizzes, with others, but you must write the R scripts and the exam by yourself and prevent others from copying your work. (See the UW Academic Misconduct policy.)
Note that the registrar's deadlines for fiveweek courses are special: for our session, "LEE," the add deadline is 4/5/2017 and the drop deadline is 4/21/2017.
Tentative Schedule
Day #: Date  Subject  Homework Due (11:59 p.m.) 
01: Tu 4/4/17  (Install R
and RStudio) (Auditors: email sign up) Optimization (goldenSectionSearch.R) Group practice on optimization (optimization.Rmd, p. 1: optimize()) 
preview hw1, below 
02: Th 4/6  Optimization, continued (gradientDescent.R, Newton.R, NelderMead.R) Discuss hw1 Group practice, p. 2: optim() 

03: Tu 4/11  Finish Group practice (submit one per group) Generic function programming Creating an R package (jgUtilities, jgUtilities_0.1.tar.gz) 

04: Th 4/13  Creating an R package, continued  hw1.Rmd (submit) (login help) 
05: Tu 4/18  Discuss hw2 Debugging (numbersBug.txt, baby.dbinom.R) 

06: Th 4/20  Profiling, timing, and code efficiency (5profile.R, nflProfile1.R, nflProfile2.R, loopTiming.R) 

07: Tu 4/25  Discuss hw3 Multicore computing for embarrassingly parallel problems (nfl.R, mandelbrot.R, escape.time.R) 

08: Th 4/27  Group practice review (submit later)  hw2.tar.gz (submit) 
09: Tu 5/2 
Calling C++ from R via Rcpp (escapeTime.cpp, mandelbrotRcpp.R) Group practice (submit next time) 

10: Th 5/4  Group practice, continued (submit one per group)  hw3.Rmd (submit) 