Course notes

Lecture 1: Basic data types
[R code]   [Reading: Matloff Chapter 1, 2, 3.1, 3.2, 3.4-3.7, 4.1-4.3, 5.1, 5.2 , 6.1]

Lecture 2: Flow control and looping
[R code]   [Reading: Matloff Chapter 7.1, 7.2, 2.9]

Lecture 3: Text representations and data frames
[R code]   [Reading: Matloff Chapter 11.1, 6.1, 5.1]

Lecture 4: Regular expressions
[R code]   [data]   [Reading: Matloff Chapter 11.2]

Lecture 5: Writing and calling functions
[R code]   [Reading: Matloff Chapter 1.3, 7.3-7.6, 7.12, 7.13, Clean Code Chapter 3]

Lecture 6: More functions
[R code]   [Reading: Same as last time]

Lecture 7: Avoiding iteration and split/apply/combine
[R code]   [Reading: R cookbook Chapter 6]

Lecture 8: Split/apply/combine part 2
[R code]   [Reading: Wickham, The Split/Apply/Combine Strategy for Data Analysis]

Lecture 9: Reshaping and merging
[R code]   [Reading: “Tidy Data”, “Reshaping data with the reshape package”]

Lecture 10: Debugging
[R code]   [Reading: Matloff Chapter 13]

Lecture 11: Testing
[R code] [numerical_deriv.R] [testthat_example.R]   [Reading: Wickham, “testthat: Get Started with Testing”]

Lecture 12: Top-down design
[R code]  

Lecture 13: Object-oriented programming and classes in R
[R code]   [Reading: Matloff Chapter 9]

Lecture 14: Fitting probability models
[R code]

Lecture 15: Newton’s method
[R code]   [Reading: Kenneth Lange, Numerical Analysis for Statisticians, Section 11.2, 13.3]

Lecture 16: Newton’s method variations

Lecture 17: Convex sets, functions, optimization
[Reading: Boyd and Vandenberghe Chapter 2.1-2.3, 3.1-3.2]

Lecture 18: Gradient descent
[Reading: Boyd and Vandenberghe Chapter 9.1-9.4]

Lecture 19: Constrained optimization
[R code]

Lecture 20: Applications and cvx
[R code]   [data]

Lecture 21: The EM Algorithm
[R code]   [Reading: Lange, Chapter 10]

Lecture 22: Monte Carlo 1
[R code]   [Reading: Lange, Sections 21.1, 21.2]

Lecture 23: Approximate Bayesian Computation
[R code]   [Reading: Sisson, Fan, Beaumont, “Overview of Approximate Bayesian Computation”]

Lecture 24: Markov Chains
[R code]   [Reading: Notes from Richard Weber’s course on Markov chains, or Lange, Chapter 23.]

Lecture 25: Metropolis Hastings
[R code]   [Reading: Lange 24.1 and 24.2]

Lecture 26: Applications
[R code]   [data]

Lecture 27: Neural nets
[Reading: Elements of Statistical Learning, 11.3-11.8]

Lecture 28: Neural nets 2
[R code]