Statistical Modeling and Computation with C/C++

Details
Introduction:
This course introduces statistical computing and statistical modeling in C and C++. All of the computational “work” will programmed in C/C++, however, we will link our compiled code into R functions. This will give students experience coding statistical models in a high level language, and by linking compiled code into R functions, end users will have the familar R interface to work with and use the code.
Recommended Textbook
- Eddelbuettel, Dirk (2013). Seamless R and C++ Integration with Rcpp. New
York: Springer. isbn: 978-1-4614-6867-7. - Monahan, John F. (2011). Numerical Methods of Statistics. English. 2nd Edition. Cambridge, UK: Cambridge University Press, pp. xiv + 428. isbn:
0-521-79168-5/hbk. doi: 10.1017/CBO9780511812231. - Press, W. H. et al. (2007). Numerical Recipes: the Art of Scientific Computing.
3rd Edition. Cambridge, UK: Cambridge University Press.
Syllabus:
Week 1: Introduction & Linear Models
Introduction to C and C++
-
Introduction to the .C and .Call interfaces in R
-
Review of Probability for Statistical Modeling
Statistical Model:
-
Linear regression
-
Non-parametric regression via splines
Numerical/Computational Method:
-
Solving linear systems
-
Computing matrix inverse
-
Least square fit
Week 2: Maximum Likelihood Estimation and Non-Linear Models
Statistical Model:
-
Generalized linear models
-
Non-linear regression models
Numerical/Computational Method:
-
Numerical Differentiation
-
Non-linear Optimization
-
Fisher Scoring algorithm
Week 3: Numerical Integration and Generalized Linear Mixed Models
Statistical Model:
- Generalized linear mixed models
Numerical/Computational Method:
-
Numerical Differentiation
-
Laplace method
-
Quadrature
Week 4: Monte Carlo Methods; Hypothesis testing and Goodness-of-fit
Statistical Model:
-
Network analysis; testing hypotheses about network characteristics
-
Evaluating Goodness-of-fit when Chi-Square assumptions are violated
Numerical/Computational Method:
- Monte Carlo Integration
Week 5: Markov Chain Monte Carlo:
Part I
Statistical Model:
-
Gaussian Copula models
-
Discrete Choice models with random coefficients
Numerical/Computational Method:
-
Markov chains
-
Gibbs sampler
-
Metropolis-Hastings algorithm
Part II
Statistical Model:
-
Statistical Genetics
-
Spatial Epidemiology
Numerical/Computational Method:
- Markov Chain Monte Carlo maximum likelihood estimation

Statistical Modeling and Computation with C/C++