TL;DR I would recommend this book to a beginner in this field, as the book is concise, explains the basics of the R language very well and covers briefly many topics, in which the reader can follow up alone if he's interested and already has gotten overview of this language and its capabilities - by reading this book one can achieve this goal definitely. I give this book 3 stars out of 5.
Before reading this book, I completed Computing for Data Analysis and Statistics One courses on coursera, where all the exercises were coded in R.
The book consists of two parts. In the first part the author introduces basic concepts of R (data structures, scopes, working with strings and dates, loading 3rd party packages etc.) to his readers, where in the second one the whole data analysis workflow (getting and cleaning of data - xml/html/csv/unstructured - you name it, visualisation and modeling, coding your own packages, testing) is presented.
Almost every paragraph which introduces new knowledge to the reader is followed by a snippet of code with its precise output. At the end of each chapter, there are 5 quiz questions and 3 exercises. Examples of code are helpful, accurate and follow each other appropriately, but sometimes the output is too long and one has to go back a few pages to find a variable which is reffered to in an example, but defined in the previous one. Sometimes output of two examples differs only in one line, merging of those code snippets (and their output) could speed up reading without confusing the user. The problem of spending too many pages where it is not necessarily needed is for me the main flaw of this book. Chapters which cover stuff very similar to other programming languages (Flow Control and Loops) could be shorter, pinpointing mainly R's specifics. Others like Advanced Looping could get more love with the form of either code snippets & their output or by breaking the rule of 5 exercises.
Other example to spare some place is definitely in the Exploring and Visualizing part. The author himself states that learning all three R's plotting systems is overkill, because ggplot2 is the most modern one and knowing to work with it is sufficient. In spite of this, this chapter contains examples using all three plotting systems. On the other hand, no examples with either statistics or machine learning packages are given. At least, the author recommends some sources where these topics are covered.
To sum up, I would recommend this book to a beginner in this field, as the book is concise, explains the basics of the R language very well and covers briefly many topics, in which the reader can follow up alone if he's interested and already has gotten overview of this language and its capabilities - by reading this book one can achieve this goal definitely. I give this book 3 stars out of 5.
TL;DR The book comprehensibly presents basics of R programming and basic toolset for data analysis using R. Great book for everybody trying to start with R.
The book is divided into two parts. The first part is a comprehensible intro to the R programming with all basic concepts supported by explanations, code examples and exercises at the end of every chapter. The second part of the book explains more advanced topics like error handling, debugging and package making, testing, but it also covers some of the most basic toolset for data analysis such as data loading, transformation, model training and data visualization.
The book presents solid background for further study but more advanced topics and data analysis libraries are not covered in the book and are left for reader’s independent learning. The author however provides several useful links for further reading and other resources.
The book is intended for novice programmers and data analysts with little or no programming experience and it meets its goals perfectly. More experienced programmers can go through the book much quicker and use it as a tutorial to quickly understand the basics of the language and as a source of references to basic libraries and other resources.