The Art of R Programming: A Tour of Statistical Software Design
R is the world’s most popular language for developing statistical software: Archaeologists use it to track the spread of ancient civilizations, drug companies use it to discover which medications are safe and effective, and actuaries use it to assess financial risks and keep economies running smoothly.The Art of R Programming takes you on a guided tour of software development with R, from basic types and data structures to advanced topics like closures, recursion, and anonymous functions. No sta
List Price: $ 39.95
Price: $ 21.91
Excellent guide to the R language,
What Matloff does is to lay out the essentials of the R language (or S, if you prefer) in depth but in a readable fashion, with well-chosen examples that reinforce learning about the language itself (as opposed to focusing on statistics or data analysis).
I’m a long-time (12 years) R user, which is my platform for analytics every day, and I have programmed in a variety of languages from C to Perl. I have long missed the fact that there is nothing for R comparable to Kernighan & Ritchie (“K&R”, The C Programming Language) or similar programming classics; finally there is. Matloff is not quite as beautiful and elegant as K&R (and to be fair, is not in their position as the language creator) but this book has similar goals and comes reasonably close.
I think there are two primary audiences for this book: those who are learning R from a computer science or programming background; and statisticians and others who use the programming language and want a thorough exposition. In my case, for instance, despite having written perhaps 100k lines of R code over the years, there remained areas where I was uneasy (e.g., exactly how do lists relate to data frames). Matloff sets it all straight, in friendly, readable fashion. Even in rudimentary chapters, I learned shortcuts and miscellaneous functions that are quite useful. The examples throughout are more “CS-like” than statistical, which is highly advantageous for this topic.
In addition to the tutorial content, it is well-suited as a quick reference. It doesn’t aim to be comprehensive from a function point of view (which is almost impossible, and what R Help is for), but it is comprehensive from a programming conceptual point of view.
In short, if you program R, and unless you’re a member of R-Core, then I believe you’ll enjoy this, will learn something, and will refer back to it repeatedly.
0
Was this review helpful to you?
Valuable addition to R bookshelf,
Variable scope – Chapter 7
User-defined classes – Ch 9
Debugging – Ch 13
Profiling and performance (mostly, vectorization) – Ch 14
Interfacing with C/C++ and Python – Ch 15
Parallel computation (“pure R” approach using “snow” package, and C++-aided approach using “OpenMP” library) – Ch 16
I have not seen the material of Chapters 15-16 in any other R reference; the other topics have shown up elsewhere – in “R in Nutshell”, for example – but get more attention here. The chapters would have been much shorter if written in a “Nutshell” style; however, I do not automatically consider a verbose, user-friendly writing style a negative.
The early chapters introduce R in a way similar to other books – except for (a) eschewing discussion of the language’s statistical repertoire, which makes sense given “programming” focus, and (b) showing a greater interest in the “matrix” class – and although they do it quite nicely (this said, let me ask the author to reconsider his “extended examples”), I would not recommend “Art of R Programming” to non-SRPs, and point them to Robert Kabacoff’s “R in Action” or (the E-Z version) Paul Teetor’s “R Cookbook” instead.
Overall, while the book did not quite click for me – I am a “data analyst” and at present do not have much “need for speed” (cf. C/C++); on the other hand, I would like a firmer grasp on R’s OOP, but here, “Art of R Programming” only whets one’s appetite – I cannot deny its quality and unique value for budding SRPs. If there was any wavering between four and five stars on my part, the appreciation of how pretty and inexpensive the book is tipped the scales.
0
Was this review helpful to you?
OK but somewhat disorganized,
Iterating the main theme, the book is very desultory. Especially when comparing it to a great book like “R Tutorial and Exercise Solution ” by Chi Yau, which is organized properly. In the first few chapters of The Art of R Programming the author will lay out and explain some basic concepts and code examples then in the next page he is showing how to manipulate various data frames with 12-20 lines of complex code. I’m not sure what audience is reading introductory chapters and would find this abstruse and erudite code useful at all given the basic chapter concepts. Also the chapter layout itself seems odd as salient and trivial topics get uneven treatment relative to their important in the real world. As a Engineer and a holder of a CS degree myself, it isn’t as if the code is too complex per se, its just too complex and superfluous given the topic discussed.
The author would have been much better served saving the fancy coding to advanced topics in which it would have been more relevant later in the book.
0
Was this review helpful to you?