Reseña o resumen
Describes the skills necessary to be an advanced R programmer
Presents the fundamentals of R, such as how to perform operations on complex data types and how to use the four object systems in R
Enables you to use existing functional programming tools and create your own
Explains how to create functions that use non-standard evaluation in a principled way
Shows how to use profiling to pinpoint performance bottlenecks and how to convert slow R functions to fast C++ equivalents
Gives you the ability to comfortably read and understand the majority of R code, including recognizing common idioms and critiquing others' code
Summary
An Essential Reference for Intermediate and Advanced R Programmers
Advanced R presents useful tools and techniques for attacking many types of R programming problems, helping you avoid mistakes and dead ends. With more than ten years of experience programming in R, the author illustrates the elegance, beauty, and flexibility at the heart of R.
The book develops the necessary skills to produce quality code that can be used in a variety of circumstances. You will learn:
The fundamentals of R, including standard data types and functions
Functional programming as a useful framework for solving wide classes of problems
The positives and negatives of metaprogramming
How to write fast, memory-efficient code
This book not only helps current R users become R programmers but also shows existing programmers what's special about R. Intermediate R programmers can dive deeper into R and learn new strategies for solving diverse problems while programmers from other languages can learn the details of R and understand why R works the way it does.
Table of Contents
Introduction
Foundations
Data structures
Subsetting
Vocabulary
Style guide
Functions
OO field guide
Environments
Debugging, condition handling, and defensive programming
Functional Programming
Functional programming
Functionals
Function operators
Computing on the Language
Non-standard evaluation
Expressions
Domain-specific languages
Performance
Performance
Optimising code
Memory
High performance functions with Rcpp
R's C interface
Index