ST444      Half Unit
Statistical Computing

This information is for the 2017/18 session.

Teacher responsible

Dr Yining Chen


This course is available on the MSc in Data Science, MSc in Operations Research & Analytics, MSc in Statistics, MSc in Statistics (Financial Statistics), MSc in Statistics (Financial Statistics) (Research), MSc in Statistics (Research), MSc in Statistics (Social Statistics) and MSc in Statistics (Social Statistics) (Research). This course is available with permission as an outside option to students on other programmes where regulations permit.

Course content

An introduction to the use of numerical linear algebra, optimisation, numerical integration and simulation in statistical computation, with their applications in statistical methods, including least squares, maximum likelihood, principle component analysis, LASSO, etc. If time permits, more advanced topics such as kernel methods and graphical LASSO will also be covered. Throughout the course, students will gain practical experience of implementing these computational methods in a programming language. Learning support will be provided for at least one programming language, such as R, Python or C++, but the choice of language supported may vary between years, depending on judged benefits to students, whether in terms of pedagogy or resulting skills.


20 hours of lectures and 10 hours of computer workshops in the LT.

Lectures will cover:

(1) Introduction to Tools in Numerical Analysis: linear algebra (Gaussian elimination, Cholesky decomposition, matrix inversion and condition); numerical optimization (bi-section, steepest descent, Newton’s method, Quasi-Newton methods, stochastic search); convex optimization (coordinate descent, ADMM); numerical integration.

(2) Introduction to Tools in Numerical Simulation: random number generation (inverse CDF, rejection, Box-Muller, etc); Introduction to Monte-Carlo methods.

(3) Applications in Statistics: linear regression and least squares; generalised linear models; principle component analysis (PCA); Page rank;  LASSO.

(4) Other advanced topics if time allows: bootstrapping; kernel density estimation; Graphical models and Graphical LASSO.


Week 6 will be used as a reading week.

Formative coursework

Students will be expected to produce 5 problem sets in the LT.

Bi-weekly exercises, usually involving some programming.

Indicative reading

Computational Statistics by Givens and Hoeting

Statistical computing in C++ and R by Eubank and Kupresanin

The Art of R Programming: A Tour of Statistical Software Design by Matloff

Think Python: How to Think Like a Computer Scientist by Downey


Exam (70%, duration: 2 hours) in the main exam period.
Project (30%) in the LT.

Key facts

Department: Statistics

Total students 2016/17: 31

Average class size 2016/17: 32

Controlled access 2016/17: No

Value: Half Unit

Guidelines for interpreting course guide information

Personal development skills

  • Self-management
  • Team working
  • Problem solving
  • Application of information skills
  • Communication
  • Application of numeracy skills