1st Edition

Advanced R Solutions

  • Available for pre-order. Item will ship after July 26, 2021
ISBN 9781032007496
July 26, 2021 Forthcoming by Chapman and Hall/CRC
304 Pages 10 Color & 13 B/W Illustrations

USD $49.95

Prices & shipping based on shipping country


Book Description

"I learned a lot working through their solutions — it's a great way to broaden and deepen your understanding of R. (I should probably go through it again...)"
- Greg Wilson, RStudio

This book offers solutions to all 284 exercises in Advanced R, Second Edition. All the solutions have been carefully documented and made to be as clear and accessible as possible. Working through the exercises and their solutions will give you a deeper understanding of a variety of programming challenges, many of which are relevant to everyday work. This will expand your set of tools on a technical and conceptual level. You will be able to transfer many of the specific programming schemes directly and will discover far more elegant solutions to everyday problems.


  • When R creates copies, and how it affects memory usage and code performance
  • Everything you could ever want to know about functions
  • The differences between calling and exiting handlers
  • How to employ functional programming to solve modular tasks
  • The motivation, mechanics, usage, and limitations of R's highly pragmatic S3 OO system
  • The R6 OO system, which is more like OO programming in other languages
  • The rules that R uses to parse and evaluate expressions
  • How to use metaprogramming to generate HTML or LaTeX with elegant R code
  • How to identify and resolve performance bottlenecks


Table of Contents

Part I Foundations
2. Names and values
3. Vectors
4. Subsetting
5. Control Flow
6. Functions
7. Environments
8. Conditions

Part II Funtional Programming
9. Functionals
10. Function Factories
11. Function Operators

Part III Object oriented programming
13. S3
14. R6
15. S4

Part IV Metaprogramming
18. Expressions
19. Quasiquotation
20. Evaluation
21. Translating R Code

Part V Techniques
23. Measuring Performance
24. Improving Performance
25. Rewriting R code in C++

View More



Malte Grosser is a business mathematician from Hamburg, who has been programming in R regularly
since the beginning of his career. He is currently finishing his PhD on machine learning for stroke
outcome prediction and develops solutions in business as a data scientist.

Henning Bumann is a psychologist and statistician who enjoys making sense of data and is motivated to
build data-driven solutions that are beautiful and meaningful. He prefers free programming tools to
support effective and transparent collaboration.

Hadley Wickham is Chief Scientist at RStudio, an Adjunct Professor at Stanford University and the
University of Auckland, and a member of the R Foundation. He is the lead developer of the tidyverse, a
collection of R packages, including ggplot2 and dplyr, designed to support data science.