1.2 Who should read this book

This book is aimed at two complementary audiences:

  • Intermediate R programmers who want to dive deeper into R, understand how the language works, and learn new strategies for solving diverse problems.

  • Programmers from other languages who are learning R and want to understand why R works the way it does.

To get the most out of this book, you’ll need to have written a decent amount of code in R or another programming language. You should be familiar with the basics of data analysis (i.e. data import, manipulation, and visualisation), have written a number of functions, and be familiar with the installation and use of CRAN packages.

This book walks the narrow line between being a reference book (primarily used for lookup), and being linearly readable. This involves some tradeoffs, because it’s difficult to linearise material while still keeping related materials together, and some concepts are much easier to explain if you’re already familiar with specific technical vocabulary. I’ve tried to use footnotes and cross-references to make sure you can still make sense even if you just dip your toes in a chapter.