Statistical computing in C++ and R
QA276.4 .E87 2012
- Unknown QA276.4 .E87 2012
- Kupresanin, Ana.
- Includes bibliographical references (p. 531-535) and index.
- Introduction Programming paradigms Object-oriented programming What lies ahead Computer representation of numbers Introduction Storage in C++ Integers Floating-point representation Errors Computing a sample variance Storage in R Exercises A sketch of C++ Introduction Variables and scope Arithmetic and logical operators Control structures Using arrays and pointers Functions Classes, objects and methods Miscellaneous topics Matrix and vector classes .Input, output and templates .Function templates .Exercises Generation of pseudo-random numbers Introduction Congruential methods Lehmer type generators in C++ An FMclass Other generation methods Nonuniform generation Generating random normals Generating random numbers in R Using the R Standalone Math Library .Exercises Programming in R Introduction File input and output Classes, methods and namespaces Writing R functions Avoiding loops in R An example Using C/C++ code in R Exercises Creating classes and methods in R Introduction Creating a new class Generic methods An example Exercises Numerical linear algebra Introduction Solving linear equations Eigenvalues and eigenvectors Singular value decomposition Least squares The Template Numerical Toolkit Exercises Numerical optimization Introduction Function objects Golden section Newton's method Maximum likelihood Random search Exercises Abstract data structures Introduction ADT dictionary ADT priority queue ADT ordered set Pointer arithmetic, iterators and templates Exercises Data structures in C++ Introduction Container basics Vector and deque The C++ list container Queues The map and set containers Algorithm basics Exercises Parallel computing in C++ and R Introduction OpenMP Basic MPI commands for C++ Parallel processing in R Parallel random number generation Exercises A An introduction to Unix A.Getting around and finding things A.Seeing what's there A.Creating and destroying things A.Things that are running and how to stop them B An introduction to R B.R as a calculator B.R as a graphics engine B.R for statistical analysis C C++ library extensions (TR) C.Pseudo-random numbers C.Hash tables C.Tuples D The Matrix and Vector classes E The ranGen class References Index.
- (source: Nielsen Book Data)
- Publisher's Summary
- With the advancement of statistical methodology inextricably linked to the use of computers, new methodological ideas must be translated into usable code and then numerically evaluated relative to competing procedures. In response to this, Statistical Computing in C++ and R concentrates on the writing of code rather than the development and study of numerical algorithms per se. The book discusses code development in C++ and R and the use of these symbiotic languages in unison. It emphasizes that each offers distinct features that, when used in tandem, can take code writing beyond what can be obtained from either language alone. The text begins with some basics of object-oriented languages, followed by a "boot-camp" on the use of C++ and R. The authors then discuss code development for the solution of specific computational problems that are relevant to statistics including optimization, numerical linear algebra, and random number generation. Later chapters introduce abstract data structures (ADTs) and parallel computing concepts. The appendices cover R and UNIX Shell programming. Features * Includes numerous student exercises ranging from elementary to challenging * Integrates both C++ and R for the solution of statistical computing problems * Uses C++ code in R and R functions in C++ programs * Provides downloadable programs, available from the authors' website The translation of a mathematical problem into its computational analog (or analogs) is a skill that must be learned, like any other, by actively solving relevant problems. The text reveals the basic principles of algorithmic thinking essential to the modern statistician as well as the fundamental skill of communicating with a computer through the use of the computer languages C++ and R. The book lays the foundation for original code development in a research environment.
(source: Nielsen Book Data)
- Publication date
- Randall L. Eubank, Ana Kupresanin.
- Chapman & Hall/CRC the R series