The Art of R Programming
- ISBN: 9781593273842
- Publisher: No Starch Press
- Publication Date: October 2011
- Pages: 400
- Price: $31.95
The Art of R Programming is a book sometimes unsure of its intended audience; if you’ve never used touched a programming language, you will need to find a primer somewhere else. However, there is an entire chapter dedicated to the basics of debugging non-working code – a skill which beginners should be intimately familiar with. Conversely, there are chapters which cover very advanced topics. The Art of R Programming is distinctly a jack of all trades, but a master of none; there’s only so much content that can be squeezed into 372 pages.
The book assumes a basic knowledge of programming, and makes frequent references to the nuances and constructs of Python and ALGOL languages such as C. Programmers familiar with these languages will soon become adapted to programming in R. I found the chapter order a little odd; the book begins describing R’s data types, and while there are many snippets of example code, language syntax isn’t actually looked at until chapter 7. An in depth knowledge of statistics is not required, however as R is a statistical programming language, a basic knowledge of statistics is assumed.
The examples provided throughout are incredibly good. Most snippets are short and sweet, but extended examples are included at the end of chapters to illustrate all the concepts covered. There are also several in-depth examples of real practical application, such as implementations of the quicksort algorithm and a binary search tree. These examples can be taken straight from the book and used in real projects.
There are many helpful hints and tips on many topics such as Object Orientated Programming, global variables, debugging and writing parallel/distributed code. The advanced topics are covered rather well, I felt. There are many nods to writing efficient code throughout the entire book, and an entire chapter dedicated to performance and memory allocation.
Overall, The Art of R Programming is well written with clear, understandable language. It would make a nice reference book. I was pleased to see an entire chapter dedicated to the built in maths functions. There is also a lot of detail put into describing input/output functions including a primer on TCP/IP and sockets in R. A comprehensive index is included, which makes it easy to find a particular topic.