R-Booksâš‘
A non-exhaustive list of R books. Full list here bookdown.org
Contentsâš‘
R Core Team Manualsâš‘
Thanks to Colin Fay for re-creating these as bookdowns!
View the list here: R manuals - Colin Fay.
The original versions by R-Core can be found here: Index of R Manuals.
-
An Introduction to R This manual provides information on data types, programming elements, statistical modeling and graphics.
-
R Data Import/Export This is a guide to importing and exporting data to and from R.
-
R Installation and Administration This is a guide to installation and administration for R.
-
Writing R Extensions Remastered version original CRAN version of Writing R Extensions
-
The R Language Definition This is an introduction to the R language, explaining evaluation, parsing, object oriented programming, computing on the language, and so forth.
-
R Internals This is a guide to the internal structures of R and coding standards for the core team working on R itself.
R Programmingâš‘
-
Advanced R This is the website for work-in-progress 2nd edition of “Advanced R”, a book in Chapman & Hall’s R Series. The book is designed primarily for R users who want to improve their programming skills and understanding of the language. It should also be useful for programmers coming to R from other languages, as it explains some of R’s quirks and shows how some parts that seem horrible do have a positive side.
-
Efficient R programming Drawing on years of experience teaching R courses, authors Colin Gillespie and Robin Lovelace provide practical advice on a range of topics—from optimizing the set-up of RStudio to leveraging C++—that make this book a useful addition to any R user’s bookshelf. Academics, business users, and programmers from a wide range of backgrounds stand to benefit from the guidance in Efficient R Programming.
-
Mastering Software Development in R This book is designed to be used in conjunction with the course sequence Mastering Software Development in R, available on Coursera. The book covers R software development for building data science tools. As the field of data science evolves, it has become clear that software development skills are essential for producing useful data science results and products. You will obtain rigorous training in the R language, including the skills for handling complex data, building R packages and developing custom data visualizations. You will learn modern software development practices to build tools that are highly reusable, modular, and suitable for use in a team-based environment or a community of developers.
-
The tidyverse style guide Good coding style is like correct punctuation: you can manage without it, but it sure makes things easier to read. This site describes the style used throughout the tidyverse. It was originally derived from Google’s R style guide, but has evolved and expanded considerably over the years.
-
R, Not the Best Practices This book will follow the first three months of learning R at my new job. Before that I was just okay at computers. I played games, used the interweb and Microsoft Word and Excel for professional stuff. I did not know anything about programming nor did I know a single programmer. Code for me was just that, code, a random string of matrix letters that meant nothing. Since the memories of not knowing shit are still fresh, I feel quite confident that I should be able to put myself in your shoes and bring you to the level of proficiency that you should be after learning R for three months. Yes, three months. This book will cover my first quarter of dealing with R and programming in general.
-
Modern R with the tidyverse This book can be useful to different audiences. If you have never used R in your life, and want to start, start with Chapter 1 of this book. Chapter 1 to 3 are the very basics, and should be easy to follow up to Chapter 9. Starting with Chapter 9, it gets more technical, and will be harder to follow. But I suggest you keep on going, and do not hesitate to contact me for help if you struggle! Chapter 9 is also where you can start if you are already familiar with R and the
{tidyverse}
, but not functional programming. If you are familiar with R but not the{tidyverse}
(or have no clue what the{tidyverse}
is), then you can start with Chapter 4. If you are familiar with R, the{tidyverse}
and functional programming, you might still be interested in this book, especially Chapter 9 and 10, which deal with package development and further advanced topics respectively. -
A Sufficient Introduction to R This book is intended to guide people that are completely new to programming along a path towards a useful skill level using R. I belive that while people can get by with just copying code chunks, that doesn’t give them the background information to modify the code in non-trivial ways. Therefore we will spend more time on foundational details than a “crash-course” would.
R Package Developmentâš‘
-
Writing R Extensions Remastered version original CRAN version of Writing R Extensions
-
R Packages Packages are the fundamental units of reproducible R code. They include reusable R functions, the documentation that describes how to use them, and sample data. In this book you’ll learn how to turn your code into packages that others can easily download and use.
-
rOpenSci Packages Dev Guide: Development, Maintenance, and Peer Review This book is a guide for authors, maintainers, reviewers and editors of rOpenSci. The first section of the book contains our guidelines for creating and testing R packages. The second section is dedicated to rOpenSci’s software peer review process: what it is, our policies, and specific guides for authors, editors and reviewers throughout the process. The third and last section features our best practice for nurturing your package once it has been onboarded: how to collaborate with other developers, how to document releases, how to promote your package and how to leverage GitHub as a development platform. The third section also features a chapter for anyone wishing to start contributing to rOpenSci packages.
R Shinyâš‘
-
JavaScript for R This book aims to remedy that by revealing how much JavaScript can greatly enhance various stages of data science pipelines from the analysis to the communication of results.
-
Mastering Shiny Shiny is a framework for creating web applications using R code. It is designed primarily with data scientists in mind, and to that end, you can create pretty complicated Shiny apps with no knowledge of HTML, CSS, or JavaScript.
-
Outstanding User Interfaces with Shiny This book is not an HTML/Javascript/CSS course! Instead, it provides a survival kit to be able to customize Shiny. I am sure however that readers will want to explore more about these topics.
-
Engineering Production-Grade Shiny Apps This book will not get you started with Shiny, nor talk how to work with Shiny once it is sent to production. What we’ll see is the process of building an application that will later be sent to production.
Data Scienceâš‘
-
R for Data Science This is the website for “R for Data Science”. This book will teach you how to do data science with R: You’ll learn how to get your data into R, get it into the most useful structure, transform it, visualise it and model it. In this book, you will find a practicum of skills for data science. Just as a chemist learns how to clean test tubes and stock a lab, you’ll learn how to clean data and draw plots—and many other things besides. These are the skills that allow data science to happen, and here you will find the best practices for doing each of these things with R. You’ll learn how to use the grammar of graphics, literate programming, and reproducible research to save time. You’ll also learn how to manage cognitive resources to facilitate discoveries when wrangling, visualising, and exploring data.
-
Functional programming and unit testing for data munging with R This book serves to show how functional programming and unit testing can be useful for the task of data munging. This book is not an in-depth guide to functional programming, nor unit testing with R. If you want to have an in-depth understanding of the concepts presented in these books, I can’t but recommend Wickham (2014a), Wickham (2015) and Wickham and Grolemund (2016) enough. Here, I will only briefly present functional programming, unit testing and building your own R packages. Just enough to get you (hopefully) interested and going.
-
Exploratory Data Analysis with R This book covers the essential exploratory techniques for summarizing data with R. These techniques are typically applied before formal modeling commences and can help inform the development of more complex statistical models. Exploratory techniques are also important for eliminating or sharpening potential hypotheses about the world that can be addressed by the data you have. We will cover in detail the plotting systems in R as well as some of the basic principles of constructing informative data graphics. We will also cover some of the common multivariate statistical techniques used to visualize high-dimensional data.
-
Text Mining with R This book serves as an introduction of text mining using the tidytext package and other tidy tools in R. The functions provided by the tidytext package are relatively simple; what is important are the possible applications. Thus, this book provides compelling examples of real text mining problems.
-
Feature Engineering and Selection: A Practical Approach for Predictive Models The goals of Feature Engineering and Selection are to provide tools for re-representing predictors, to place these tools in the context of a good predictive modeling framework, and to convey our experience of utilizing these tools in practice.
-
Statistical Inference via Data Science This book will help you develop your “data science toolbox”, including tools such as data visualization, data formatting, data wrangling, and data modeling using regression. With these tools, you’ll be able to perform the entirety of the “data/science pipeline” while building data communication skills
-
Hands-on Machine Learning with R You will learn how to build and tune these various models with R packages that have been tested and approved due to their ability to scale well. However, our motivation in almost every case is to describe the techniques in a way that helps develop intuition for its strengths and weaknesses.
-
Introduction to Data Exploration and Analysis with R This book is designed as a crash course in coding with R and data analysis, built for people trying to teach themselves the skills needed for most analyst jobs today. You won’t need any past experience with R or data analytics - the aim of the book is to work as a primer for people of all backgrounds.
-
Explanatory Model Analysis Explore, Explain, and Examine Predictive Models. With examples in R and Python
-
Data Skills for Reproducible Science This course provides an overview of skills needed for reproducible research and open science using the statistical programming language R. Students will learn about data visualization, data tidying and wrangling, archiving, iteration and functions, probability and data simulations, general linear models, and reproducible workflows. Learning is reinforced through weekly assignments that involve working with different types of data.
-
Working with Data in R This book will provide readers a few basic steps to begin working with data in R. It is not meant as a comprehensive introduction to using R for all of the different functions that are possible. Rather, it is tailored to help an individual that has quantitative data they would like to work with, but has not worked in R previously. The presentation of material is meant to be accessible to students with little to no background in R or computer programming.
-
R Programming for Data Science This book is about the fundamentals of R programming. You will get started with the basics of the language, learn how to manipulate datasets, how to write functions, and how to debug and optimize code. With the fundamentals provided in this book, you will have a solid foundation on which to build your data science toolbox.
-
Designing and Building Data Science Solutions Data science can be an exciting, invigorating field, and for the business leader, it can bring about revolutionary changes to an organization that can come with huge returns on investment and value added. For the data scientist, designing and delivering successful projects is rewarding, stimulating and tremendously gratifying. We hope this guide gives you the confidence to understand the risks and approach your project in a sensible way.
-
Data Preparation: Essential Steps Before & After Analysis It is routinely noted that the Pareto principle applies to data science—80% of one’s time is spent on data collection and preparation, and the remaining 20% on the “fun stuff” like modeling, data visualization, and communication.
-
The caret Package The
caret
package (short for Classification And REgression Training) is a set of functions that attempt to streamline the process for creating predictive models. The package contains tools for:- data splitting
- pre-processing
- feature selection
- model tuning using resampling
- variable importance estimation
as well as other functionality.
Data Visualizationâš‘
-
Fundamentals of Data Visualization The book is meant as a guide to making visualizations that accurately reflect the data, tell a story, and look professional. It has grown out of my experience of working with students and postdocs in my laboratory on thousands of data visualizations. Over the years, I have noticed that the same issues arise over and over. I have attempted to collect my accumulated knowledge from these interactions in the form of this book. The book’s source code is hosted on GitHub, at https://github.com/clauswilke/dataviz.
-
R Graphics Cookbook, 2nd edition A practical guide that provides more than 150 recipes to help you generate high-quality graphs quickly, without having to comb through all the details of R’s graphing systems.
-
Data Visualization with R R is an amazing platform for data analysis, capable of creating almost any type of graph. This book helps you create the most popular visualizations - from quick and dirty plots to publication-ready graphs. The text relies heavily on the ggplot2 package for graphics, but other approaches are covered as well.
-
Interactive web-based data visualization with R, plotly, and shiny In this book, you’ll gain insight and practical skills for creating interactive and dynamic web graphics for data analysis from R. It makes heavy use of plotly for rendering graphics, but you’ll also learn about other R packages that augment a data science workflow, such as the tidyverse and shiny.
-
Data Visualization with ggplot2 Data Visualization with ggplot2
Databasesâš‘
-
R, Databases, and Docker This book will help you create a hybrid environment on your machine that can mimic some of the uncharted territory in your organization. It goes far beyond the basic connection issues and covers issues that you face when you are finding your way around or writing queries to your organization’s databases, not just when maintaining inherited scripts.
-
Mongolite User Manual This book provides a high level introduction to using MongoDB with the mongolite client in R.
Financialâš‘
-
Techincal Analysis with R This short book is a short introduction on how to use R and RStudio to do financial data analysis from the beginning. No prior knowledge of R is required. While you will learn various skills to work on R programming but the main goal is to learn how to use R to backtest a trading strategy and evaluate its performance.
-
Principles of Econometrics with R Resource for the “Principles of Econometrics” textbook by Carter Hill, William Griffiths and Guay Lim, 4-th edition (Hill, Griffiths, and Lim 2011).
-
Processing and Analyzing Financial Data with R This book introduces the reader to the use of R and RStudio as a platform for processing and analyzing financial data.
-
Forecasting: Principles and Practice This textbook is intended to provide a comprehensive introduction to forecasting methods and to present enough information about each method for readers to be able to use them sensibly. We don’t attempt to give a thorough discussion of the theoretical details behind each method, although the references at the end of each chapter will fill in many of those details.
R-Markdown and Friendsâš‘
-
R Markdown: The Definitive Guide The document format “R Markdown” was first introduced in the knitr package (Xie 2015, 2018d) in early 2012. The idea was to embed code chunks (of R or other languages) in Markdown documents. In fact, knitr supported several authoring languages from the beginning in addition to Markdown, including LaTeX, HTML, AsciiDoc, reStructuredText, and Textile. Looking back over the five years, it seems to be fair to say that Markdown has become the most popular document format, which is what we expected. The simplicity of Markdown clearly stands out among these document formats.
-
R Markdown Cookbook This book is designed to provide a range of examples on how to extend the functionality of your R Markdown documents. As a cookbook, this guide is recommended to new and intermediate R Markdown users who desire to enhance the efficiency of using R Markdown and also explore the power of R Markdown.
-
Bookdown bookdown: Authoring Books and Technical Documents with R Markdown. This short book introduces an R package, bookdown, to change your workflow of writing books. It should be technically easy to write a book, visually pleasant to view the book, fun to interact with the book, convenient to navigate through the book, straightforward for readers to contribute or leave feedback to the book author(s), and more importantly, authors should not always be distracted by typesetting details.
-
blogdown: Creating Websites with R Markdown We introduce an R package, blogdown, in this short book, to teach you how to create websites using R Markdown and Hugo. If you have experience with creating websites, you may naturally ask what the benefits of using R Markdown are, and how blogdown is different from existing popular website platforms, such as WordPress.
-
Introduction to Research Methods This book is intended as a practical introduction to research methods in the social sciences. If you pursue research academically or professionally, it will probably not be the last book you need to read on the subject. This is intended as something of a gentle introduction with a focus on the applications of the information and examples.
Utilityâš‘
-
Happy Git and GitHub for the useR Happy Git provides opinionated instructions on how to: Install Git and get it working smoothly with GitHub, in the shell and in the RStudio IDE. Develop a few key workflows that cover your most common tasks. Integrate Git and GitHub into your daily work with R and R Markdown.
-
What They Forgot to Teach You About R We focus on building holistic and project-oriented workflows that address the most common sources of friction in data analysis, outside of doing the statistical analysis itself.
-
Data Science at the Command Line, 1e Discover why the command line is an agile, scalable, and extensible technology. Even if you’re already comfortable processing data with, say, Python or R, you’ll greatly improve your data science workflow by also leveraging the power of the command line.
-
Github actions with R GitHub actions allow us to trigger automated steps after we launch GitHub interactions such as when we push, pull, submit a pull request, or write an issue. For example, there are actions that will automatically trigger:
- continuous integration (CI)
- messages in response to issues or pull requests
- rendering/compiling e.g. of rmarkdown, bookdown, blogdowns etc
GitHub actions follow the steps designated in a
yaml
file, which we place in the.github/workflows
folder of the repo. We can add theseyaml
files to our repo either by clicking on a series of steps on GitHub.com, or using wrapper functions provided by theusethis
package, depending on which actions you wish to include. We describe both ways here. -
Geocomputation with R The book is designed for intermediate-to-advanced R users interested in geocomputation and R beginners who have prior experience with geographic data. If you are new to both R and geographic data, do not be discouraged: we provide links to further materials and describe the nature of spatial data from a beginner’s perspective in Chapter 2 and in links provided below.
-
Business Analytics with R The notes for this course were compiled from years of work in industry using R. These notes are intended to provide the non-programmer and programmer alike a hands-on approach to learning R for use in Business Analysis. The notes are ideal for the Accounting, Business, and Data Science majors desiring a better understanding of how the programming language R may be used to retrieve and organize data, perform analysis, create visualizations and automate business processes to reduce error and improve efficiency in the workplace.
Misc books here