Most Helpful Customer Reviews
31 of 33 people found the following review helpful:
2.0 out of 5 stars
Perhaps a decent resource for R package developers, not end-users, August 6, 2008
This review is from: R Programming for Bioinformatics (Chapman & Hall/CRC Computer Science & Data Analysis) (Hardcover)
This is a strange little book in that it seems somewhat directed toward statisticians who want to develop R packages. The OOP section takes up 50 pages and discusses "S3 and S4" implementations of OOP in R in great detail, all of which is not doubt important for those few dozen accomplished statisticians who wish to write packages. However, by the time you are ready to actually write an R function that other people will use I can't imagine you wouldn't already be familiar with some of the basic commands discussed elsewhere in this book. So I am wondering who the intended audience is.
I think the majority of R users (biologists and programmers) want to run through some common statistical routines in a procedural fashion and produce reports that perform some analysis and show some graphs. The difficulty with R is learning how to massage data into a form that an existing statistical function will accept. That will invariably involve helper R-specific helper functions that do not exist in programming languages (e.g. unsplit) or that require a precise understanding of input (e.g. xtabs), and statistical routines that almost never return meaningful errors (glm). Manipulating data structures in R is not particularly intuitive (e.g. as.numeric(levels(f))[f]), so tons of examples are a must. However this book simply does not include enough R code - probably fewer than 250 lines.
In some instances commands are discussed at length in the space it would take to simply show the command. For example, a beginner would want to know how to save a data frame. Instead of providing a useful example like:
save(myDataFrame,file="myDataFrame.frame.RData",compress=TRUE)
there is a bizarre paragraph called "Working with R's binary format", in which save and load are discussed in theory as if they are planned for a distant release.
There is no chapter on using Sweave to develop pdf reports despite the book being actually written in Sweave. The author is more focused on "vignettes" which appear to be for documentation akin to POD files.
This book does include excellent sections on string manipulation, connecting to databases, and C integration. I learned some things about some neat Bioconductor functions available but a dedicated chapter would be nice.
At no point do you ever sense the author does not know what he is talking about - he just doesn't know who he is talking to. I hope in the future "R Programming For Bioinformatics" is split this into two more comprehensive books: "Developing R Packages" and "R for Biologists"
Help other customers find the most helpful reviews
Was this review helpful to you? Yes
No
13 of 14 people found the following review helpful:
5.0 out of 5 stars
Clearly written intro to R _programming_, not general use, July 24, 2009
This review is from: R Programming for Bioinformatics (Chapman & Hall/CRC Computer Science & Data Analysis) (Hardcover)
The previous two reviewers are apparently frustrated because this book is not what they expected. In R world, however, _programming_ does not mean doing statistics or graphics in R - it means R software development. If the book was called "R Software Development for Bioinformatics", there would perhaps be less confusion - unless there was somebody who would be then led to believe that it was the book about developing core R software...
Anyway, this book is well organized and clearly written. As for bioinformatics, the author is not only a co-creator of R, he is a leading figure of the Bioconductor project. Suitable for a bioinformatics-oriented book, it has a whole big chapter on working with character data (not something discussed at great length in other R books, and a very useful chapter on Data Techniques replete with real-life Bioconductor examples. The chapter on OOP comes early in the book and, while does not go into too many details, it is enough to get you going sooner rather than later.
As a conclusion: potential buyers should be careful about whether the content of this book is what thy need. Those who do will probably be happy with the way it is written.
Help other customers find the most helpful reviews
Was this review helpful to you? Yes
No
5 of 5 people found the following review helpful:
1.0 out of 5 stars
Weak writing, poor editing, uncertain audience, December 28, 2009
This review is from: R Programming for Bioinformatics (Chapman & Hall/CRC Computer Science & Data Analysis) (Hardcover)
The book is not designed to teach you R or programming and offers little about using R for bioinformatics (apparently Chapter 5, for "Working with Character Data", and Chapter 8, about "Data Technologies", account for the "bioinformatics" part). The text is riddled with writing errors -- the author writes badly in English, however expert he may be in R -- and looks as though it has not been copy-edited at all, with all the typos, extra words, misspellings, and awkward or wrong syntax. Concepts are not introduced sequentially or systematically defined; for one example (p43) "expr" is defined as "any valid R expression" -- but "expression" is never defined.
Chapter 3, on "Object-Oriented Programming in R", I find effectively unreadable. In 3.2 appears "Inheritance allows new classes to extend, often by adding new slots...". Aside from the misuse of the transitive verb and the dangling participle, the author nowhere bothers to define "slot", but continues to use it thereafter. If he had decided for whom he is writing the book and that it was an audience advanced enough to have used an OOP language, he might have said "In R, "slot" refers to what is called a "member" in Java or C++." Then he starts talking about "dispatch", only some time later casually "defining" it two or three times. The trouble with this approach is that you never work out what you're supposed to know already, and finally decide that the author himself doesn't know or care. It would be far better to have a book of which the first third is elementary, but systematic, lead-in that you can skip if sufficiently advanced, and the second two thirds is useful stuff that refers back to the earlier material.
Problems often do not draw on material that has been presented by example; they assume that you don't need the book and can go learn the language from the onscreen R help material. After several examples of this, I got to Ex. 2.21 on p66, where the reader is told to "produce a bitmap image of a plot", with not a single example of any graphics call leading up to this. In consequence of these disconnects, I gave up working the problems, which would ordinarily be the best way to learn the language. Tellingly, the last thing the author wrote before posing this series of graphics questions was "interested readers are encouraged to explore these different settings themselves." In other words, "Why read my book? Go find out for yourself!"
I program in several languages and teach one at the introductory level. I have trouble learning from this book even at my level and would have much more as a novice programmer. For such an important language and an author who's reputed to be one of the heavy hitters in the R community, this is disappointing.
Help other customers find the most helpful reviews
Was this review helpful to you? Yes
No
|