R is an opensource software package and rapidly increases its popularity in both industry and academics. Google trend is probably the best tool to show you how popular R is since it allows us to rank the search interest among five major statistical software packages. You can clearly observe that R has been the top search interest since 2011 and continues to maintain its top place.
Despite R’s popularity, it is still very daunting to learn R as R has no clickandpoint feature like SPSS and learning R usually takes lots of time. No worries! As selfR learner like us, we constantly receive the requests about how to learn R. Besides hiring someone to teach you or paying tuition fees for online courses, our suggestion is that you can also pick up some books that fit your current R programming level. Therefore, in this post, we would like to share some good books that teach you how to learn programming in R based on three levels: elementary, intermediate, and advanced levels. Each level focuses on one task so you will know whether these books fit your needs. While the following books do not necessarily focus on the task we define, you should focus the task when you reading these books so you are not lost in contexts.
Elementary level: Books introducing R
If you are not a statistics student or graduate, you probably learn statistics from using software like Excel, SPSS, STATA, SAS, Matlab…etc. A great start is to learn R with something that you are familiar with. The following books will help convert your knowledge to learning R.
Book Cover  Extracted summary 

Book Title: R Through Excel: A Spreadsheet Interface for Statistics, Data Analysis, and Graphics Author: Heiberger, Richard M., Neuwirth, Erich This book builds on RExcel, a free addin for Excel that can be downloaded from the R distribution network. RExcel seamlessly integrates the entire set of R’s statistical and graphical methods into Excel 

Book Title: R for SAS and SPSS Users Author: Muenchen, Robert A This book introduces R using SAS and SPSS terms with which you are already familiar. It demonstrates which of the addon packages are most like SAS and SPSS and compares them to R’s builtin functions. 

Book Title: R for Stata Users Author: Muenchen, Robert A., Hilbe, Joseph M. This book introduces R using Stata terminology with which you are already familiar. It steps through more than 30 programs written in both languages, comparing and contrasting the two packages’ different approaches. 

Book Title: R and MATLAB Author: David E. Hiebeler This book is designed for users who already know R or MATLAB and now need to learn the other platform. The book makes the transition from one platform to the other as quick and painless as possible. 

Book Title: Python for R Users Author: Ajay Ohri This book is the first of its kind to provide a reference that enables students and practitioners to easily learn to code in Python if they are familiar with R and vice versa, even if they are beginners in the second language. It also provides a detailed introduction and overview of each language to the reader who might be unfamiliar with the other. 
Another way to leverage your knowledge is by using your field knowledge like finance, economics, education…et al. You can find those books in my another post here.
Intermediate level: Books instructing you how to write functions
Book Cover  Extracted summary 

Book Title: HandsOn Programming with R: Write Your Own Functions and Simulations Author: Garrett Grolemund This book teach you to learn how to load data, assemble and disassemble data objects, navigate R’s environment system, write your own functions, and use all of R’s programming tools. 

Book Title: Art of R Programming Author: Norman Matloff This book takes you on a guided tour of software development with R, from basic types and data structures to advanced topics. No statistical knowledge is required, and your programming skills can range from hobbyist to pro. 

Book Title: Software for Data Analysis Programming with R Author: Chambers, John This book guides the reader through programming with R, beginning with simple interactive use and progressing by gradual stages, starting with simple functions. 

Book Title: Introduction to Scientific Programming and Simulation Using R Author: Owen Jones et al. This book introduces scientific programming and stochastic modelling in a clear, practical, and thorough way. Readers learn programming by experimenting with the provided R code and data. 
Advanced level: Books teaching you how to write packages
Making packages is a great way to share your code and most importantly you will learn how to document your code. The following books do not only teach you how to write a package but also instruct you how to test the code and equip you with great programmer tools and knowledge.
Book Cover  Extracted summary 

Book Title: R packages Author: Hadley Wickham This book shows you how to bundle reusable R functions, sample data, and documentation together by applying author Hadley Wickham’s package development philosophy. 

Book Title: Extending R Author: John M. Chambers This book covers key concepts and techniques in R to support analysis and research projects. It presents the core ideas of R, provides programming guidance for projects of all scales, and introduces new, valuable techniques that extend R. 

Book Title: Advanced R Author: Hadley Wickham This book presents useful tools and techniques for attacking many types of R programming problems, helping you avoid mistakes and dead ends. With more than ten years of experience programming in R, the author illustrates the elegance, beauty, and flexibility in R. 
Notice that the information above is directly collected from the publisher website and we just summarize it for you. Further details about these books can be assessed by clicking the book title links to the book publisher. Happy learning R and hope you enjoy the book list above!
Rbloggers.com offers daily email updates about R news and tutorials on topics such as: Data science, Big Data, R jobs, visualization (ggplot2, Boxplots, maps, animation), programming (RStudio, Sweave, LaTeX, SQL, Eclipse, git, hadoop, Web Scraping) statistics (regression, PCA, time series, trading) and more...