Statistical Modeling and Computation with C/C++
Hosted by NYC Data Science Academy
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
