Leanpub Header

Skip to main content

R Programming for Data Science

This book brings the fundamentals of R programming to you, using the same material developed as part of the industry-leading Johns Hopkins Data Science Specialization. The skills taught in this book will lay the foundation for you to begin your journey learning data science. Printed copies of this book are available through Lulu.

This book is available in multiple packages!

Pick Your Package
PDF
EPUB
WEB
181
Pages
About

About

About the Book

Data science has taken the world by storm. Every field of study and area of business has been affected as people increasingly realize the value of the incredible quantities of data being generated. But to extract value from those data, one needs to be trained in the proper data science skills. The R programming language has become the de facto programming language for data science. Its flexibility, power, sophistication, and expressiveness have made it an invaluable tool for data scientists around the world. 

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.

If you are interested in a printed copy of this book, you can purchase one at Lulu.

Packages

Pick Your Package

All packages include the ebook in the following formats: PDF, EPUB, and Web

The Book

Minimum price

Suggested price$20.00

This package contains just the book in PDF, EPUB, or MOBI formats.

Free!

    The Book + Datasets + R Code Files

    Minimum price

    Suggested price$25.00

    This package contains the book and R code files corresponding to each of the chapters in the book. The package also contains the datasets used in all of the chapters so that the code can be fully executed.

    $20.00

    • Datasets
    • R Code Files

    This book is also available in the following packages:

    • The Book + Lecture Videos (HD) + Datasets + R Code Files

      This package includes the book, high definition lecture video files (720p), datasets and R code files for all chapters. The collection also contains live demonstrations of how to use various aspects of R that could not be included in the book. The videos are licensed under a Creative Commons Attribution-NonCommercial-NoDerivatives 4.0 International license.

      • Datasets
      • R Code Files
      • Lecture Videos (HD)
      Minimum price
      $30.00
      Suggested price
      $35.00

    Author

    About the Author

    Roger D. Peng

    Roger D. Peng is a Professor of Statistics and Data Sciences at the University of Texas, Austin. Previously, he was Professor of Biostatistics at the Johns Hopkins Bloomberg School of Public Health. His research focuses on the development of statistical methods for addressing environmental health problems and on developing tools for doing better data analysis. He is the author of the popular book R Programming for Data Science and 10 other books on data science and statistics. He is also the co-creator of the Johns Hopkins Data Science Specialization, the Simply Statistics blog where he writes about statistics for the public, the Not So Standard Deviations podcast with Hilary Parker, and The Effort Report podcast with Elizabeth Matsui. Roger is a Fellow of the American Statistical Association and is the recipient of the Mortimer Spiegelman Award from the American Public Health Association, which honors a statistician who has made outstanding contributions to public health. He can be found on Twitter and GitHub at @rdpeng.

    Leanpub Podcast

    Episode 16

    An Interview with Roger D. Peng

    Contents

    Table of Contents

    1.Stay in Touch!

    2.Preface

    3.History and Overview of R

    1. 3.1What is R?
    2. 3.2What is S?
    3. 3.3The S Philosophy
    4. 3.4Back to R
    5. 3.5Basic Features of R
    6. 3.6Free Software
    7. 3.7Design of the R System
    8. 3.8Limitations of R
    9. 3.9R Resources

    4.Getting Started with R

    1. 4.1Installation
    2. 4.2Getting started with the R interface

    5.R Nuts and Bolts

    1. 5.1Entering Input
    2. 5.2Evaluation
    3. 5.3R Objects
    4. 5.4Numbers
    5. 5.5Attributes
    6. 5.6Creating Vectors
    7. 5.7Mixing Objects
    8. 5.8Explicit Coercion
    9. 5.9Matrices
    10. 5.10Lists
    11. 5.11Factors
    12. 5.12Missing Values
    13. 5.13Data Frames
    14. 5.14Names
    15. 5.15Summary

    6.Getting Data In and Out of R

    1. 6.1Reading and Writing Data
    2. 6.2Reading Data Files with read.table()
    3. 6.3Reading in Larger Datasets with read.table
    4. 6.4Calculating Memory Requirements for R Objects

    7.Using the readr Package

    8.Using Textual and Binary Formats for Storing Data

    1. 8.1Using dput() and dump()
    2. 8.2Binary Formats

    9.Interfaces to the Outside World

    1. 9.1File Connections
    2. 9.2Reading Lines of a Text File
    3. 9.3Reading From a URL Connection

    10.Subsetting R Objects

    1. 10.1Subsetting a Vector
    2. 10.2Subsetting a Matrix
    3. 10.3Subsetting Lists
    4. 10.4Subsetting Nested Elements of a List
    5. 10.5Extracting Multiple Elements of a List
    6. 10.6Partial Matching
    7. 10.7Removing NA Values

    11.Vectorized Operations

    1. 11.1Vectorized Matrix Operations

    12.Dates and Times

    1. 12.1Dates in R
    2. 12.2Times in R
    3. 12.3Operations on Dates and Times
    4. 12.4Summary

    13.Managing Data Frames with the dplyr package

    1. 13.1Data Frames
    2. 13.2The dplyr Package
    3. 13.3dplyr Grammar
    4. 13.4Installing the dplyr package
    5. 13.5select()
    6. 13.6filter()
    7. 13.7arrange()
    8. 13.8rename()
    9. 13.9mutate()
    10. 13.10group_by()
    11. 13.11%>%
    12. 13.12Summary

    14.Control Structures

    1. 14.1if-else
    2. 14.2for Loops
    3. 14.3Nested for loops
    4. 14.4while Loops
    5. 14.5repeat Loops
    6. 14.6next, break
    7. 14.7Summary

    15.Functions

    1. 15.1Functions in R
    2. 15.2Your First Function
    3. 15.3Argument Matching
    4. 15.4Lazy Evaluation
    5. 15.5The ... Argument
    6. 15.6Arguments Coming After the ... Argument
    7. 15.7Summary

    16.Scoping Rules of R

    1. 16.1A Diversion on Binding Values to Symbol
    2. 16.2Scoping Rules
    3. 16.3Lexical Scoping: Why Does It Matter?
    4. 16.4Lexical vs. Dynamic Scoping
    5. 16.5Application: Optimization
    6. 16.6Plotting the Likelihood
    7. 16.7Summary

    17.Coding Standards for R

    18.Loop Functions

    1. 18.1Looping on the Command Line
    2. 18.2lapply()
    3. 18.3sapply()
    4. 18.4split()
    5. 18.5Splitting a Data Frame
    6. 18.6tapply
    7. 18.7apply()
    8. 18.8Col/Row Sums and Means
    9. 18.9Other Ways to Apply
    10. 18.10mapply()
    11. 18.11Vectorizing a Function
    12. 18.12Summary

    19.Regular Expressions

    1. 19.1Before You Begin
    2. 19.2Primary R Functions
    3. 19.3grep()
    4. 19.4grepl()
    5. 19.5regexpr()
    6. 19.6sub() and gsub()
    7. 19.7regexec()
    8. 19.8The stringr Package
    9. 19.9Summary

    20.Debugging

    1. 20.1Something’s Wrong!
    2. 20.2Figuring Out What’s Wrong
    3. 20.3Debugging Tools in R
    4. 20.4Using traceback()
    5. 20.5Using debug()
    6. 20.6Using recover()
    7. 20.7Summary

    21.Profiling R Code

    1. 21.1Using system.time()
    2. 21.2Timing Longer Expressions
    3. 21.3The R Profiler
    4. 21.4Using summaryRprof()
    5. 21.5Summary

    22.Simulation

    1. 22.1Generating Random Numbers
    2. 22.2Setting the random number seed
    3. 22.3Simulating a Linear Model
    4. 22.4Random Sampling
    5. 22.5Summary

    23.Data Analysis Case Study: Changes in Fine Particle Air Pollution in the U.S.

    1. 23.1Synopsis
    2. 23.2Loading and Processing the Raw Data
    3. 23.3Results

    24.Parallel Computation

    1. 24.1Hidden Parallelism
    2. 24.2Embarrassing Parallelism
    3. 24.3The Parallel Package
    4. 24.4Example: Bootstrapping a Statistic
    5. 24.5Building a Socket Cluster
    6. 24.6Summary

    25.Why I Indent My Code 8 Spaces

    26.About the Author

    The Leanpub 60 Day 100% Happiness Guarantee

    Within 60 days of purchase you can get a 100% refund on any Leanpub purchase, in two clicks.

    Now, this is technically risky for us, since you'll have the book or course files either way. But we're so confident in our products and services, and in our authors and readers, that we're happy to offer a full money back guarantee for everything we sell.

    You can only find out how good something is by trying it, and because of our 100% money back guarantee there's literally no risk to do so!

    So, there's no reason not to click the Add to Cart button, is there?

    See full terms...

    Earn $8 on a $10 Purchase, and $16 on a $20 Purchase

    We pay 80% royalties on purchases of $7.99 or more, and 80% royalties minus a 50 cent flat fee on purchases between $0.99 and $7.98. You earn $8 on a $10 sale, and $16 on a $20 sale. So, if we sell 5000 non-refunded copies of your book for $20, you'll earn $80,000.

    (Yes, some authors have already earned much more than that on Leanpub.)

    In fact, authors have earned over $14 million writing, publishing and selling on Leanpub.

    Learn more about writing on Leanpub

    Free Updates. DRM Free.

    If you buy a Leanpub book, you get free updates for as long as the author updates the book! Many authors use Leanpub to publish their books in-progress, while they are writing them. All readers get free updates, regardless of when they bought the book or how much they paid (including free).

    Most Leanpub books are available in PDF (for computers) and EPUB (for phones, tablets and Kindle). The formats that a book includes are shown at the top right corner of this page.

    Finally, Leanpub books don't have any DRM copy-protection nonsense, so you can easily read them on any supported device.

    Learn more about Leanpub's ebook formats and where to read them

    Write and Publish on Leanpub

    You can use Leanpub to easily write, publish and sell in-progress and completed ebooks and online courses!

    Leanpub is a powerful platform for serious authors, combining a simple, elegant writing and publishing workflow with a store focused on selling in-progress ebooks.

    Leanpub is a magical typewriter for authors: just write in plain text, and to publish your ebook, just click a button. (Or, if you are producing your ebook your own way, you can even upload your own PDF and/or EPUB files and then publish with one click!) It really is that easy.

    Learn more about writing on Leanpub