There are a plethora of great books that are widely recommended for the beginner R user, but I many users often find their skills plateauing once they learn just enough to get by on a day-to-day basis. These are some of the books that helped me to break through that plateau and take full advantage of R.
Advanced R is the best one stop shop for everything about R that your introductory courses and textbooks didn’t teach you. It is a relatively dense book and, if you’re like me, it might not be immediately clear why some of the techniques and strategies are so valuable. By at least browsing the entire book, you will gain a much better understanding of what advanced programming strategies are available to you in R. If you can recognise when these techniques are needed in your own work you can revisit the relevant chapters as needed.
I often learn from making mistakes, fixing them, and learning to avoid them in the future. The R Inferno helped me avoid a lot of mistakes, pointing out a lot of R’s sharpest edges and how to avoid them. It is not necessarily a book that you should work through like a textbook – it is another dense book, and it helps to reflect on chapters as you work on some relevant code. This is one book that I often revisit, finding more to take away each time.
Given his massive contributions to R in general and the tidyverse
, it is no surprise that Hadley Wickham is an author of two entries on this list (the other being Advanced R). Even if you don’t intend to create and publish R packages for others to use, they can be an incredibly valuable part of your workflow. Making your code portable and reusable can yield massive efficiencies, and knowing how R packages work under the hood can make debugging code or contributing to open-source software much easier. Now in its second edition, R Packages should be your go to for anything related to… R packages.
The most recently published book on this list, RAPs with R has quickly become one of my favourites, collecting some of the highest yield strategies the data scientist or analyst can implement to ensure reproducibility in their work. This is an incredibly readable book that you can sit down and work through from start to finish, following along with practical examples. The section on Git is incredibly useful for R users, who typically aren’t exposed to version control in introductory courses. RAPS with R also helps illustrate how writing functions and packages should be part of any R user’s workflow, whileI have found the section on deploying R code in docker containers particularly valuable in my own work.
This final entry is different from the others in that I wouldn’t necessarily recommend it to every user – it is really only useful for those trying to make interactive shiny
applications. That said, it is so good for that purpose that I wanted to highlight it. The golem
approach to shiny
applications championed by this book is a total game changer. Writing clean, modular code, and making use of the bundled deployment tools makes building interactive applications much less stressful. If you’re looking to make your R code useful to a wider audience through interactive applications, this could be a game changer.