R in Action
Data Analysis and Graphics with R
Robert I. Kabacoff
  • August 2011
  • ISBN 9781935182399
  • 472 pages
  • printed in black & white

Lucid and engaging...and fun way to learn R!

Amos A. Folarin, University College London


R in Action, Second Edition is now available. An eBook of this older edition is included at no additional cost when you buy the revised edition!

R in Action is the first book to present both the R system and the use cases that make it such a compelling package for business developers. The book begins by introducing the R language, including the development environment. Focusing on practical solutions, the book also offers a crash course in practical statistics and covers elegant methods for dealing with messy and incomplete data using features of R.

Table of Contents detailed table of contents



about this book

about the cover illustration

Part I Getting Started

1. Introduction to R

1.1. Why use R?

1.2. Obtaining and installing R

1.3. Working with R

1.4. Packages

1.5. Batch processing

1.6. Using output as input—reusing results

1.7. Working with large datasets

1.8. Working through an example

1.9. Summary

2. Creating a dataset

2.1. Understanding datasets

2.2. Data structures

2.3. Data input

2.4. Annotating datasets

2.5. Useful functions for working with data objects

2.6. Summary

3. Getting started with graphs

3.1. Working with graphs

3.2. A simple example

3.3. Graphical parameters

3.4. Adding text, customized axes, and legends

3.5. Combining graphs

3.6. Summary

4. Basic data management

4.1. A working example

4.2. Creating new variables

4.3. Recoding variables

4.4. Renaming variables

4.5. Missing values

4.6. Date values

4.7. Type conversions

4.8. Sorting data

4.9. Merging datasets

4.10. Subsetting datasets

4.11. Using SQL statements to manipulate data frames

4.12. Summary

5. Advanced data management

5.1. A data management challenge

5.2. Numerical and character functions

5.3. A solution for our data management challenge

5.4. Control flow

5.5. User-written functions

5.6. Aggregation and restructuring

5.7. Summary

Part II Basic Methods

6. Basic graphs

6.1. Bar plots

6.2. Pie charts

6.3. Histograms

6.4. Kernel density plots

6.5. Box plots

6.6. Dot plots

6.7. Summary

7. Basic statistics

7.1. Descriptive statistics

7.2. Frequency and contingency tables

7.3. Correlations

7.4. t-tests

7.5. Nonparametric tests of group differences

7.6. Visualizing group differences

7.7. Summary

Part III Intermediate Methods

8. Regression

8.1. The many faces of regression

8.2. OLS regression

8.3. Regression diagnostics

8.4. Unusual observations

8.5. Corrective measures

8.6. Selecting the "best" regression model

8.7. Taking the analysis further

8.8. Summary

9. Analysis of variance

9.1. A crash course on terminology

9.2. Fitting ANOVA models

9.3. One-way ANOVA

9.4. One-way ANCOVA

9.5. Two-way factorial ANOVA

9.6. Repeated measures ANOVA

9.7. Multivariate analysis of variance (MANOVA)

9.8. ANOVA as regression

9.9. Summary

10. Power analysis

10.1. A quick review of hypothesis testing

10.2. Implementing power analysis with the pwr package

10.3. Creating power analysis plots

10.4. Other packages

10.5. Summary

11. Intermediate graphs

11.1. Scatter plots

11.2. Line charts

11.3. Correlograms

11.4. Mosaic plots

11.5. Summary

12. Resampling statistics and bootstrapping

12.1. Permutation tests

12.2. Permutation test with the coin package

12.3. Permutation tests with the lmPerm package

12.4. Additional comments on permutation tests

12.5. Bootstrapping

12.6. Bootstrapping with the boot package

12.7. Summary

Part IV Advanced Methods

13. Generalized linear models

13.1. Generalized linear models and the glm() function

13.2. Logistic regression

13.3. Poisson regression

13.4. Summary

14. Principal components and factor analysis

14.1. Principal components and factor analysis in R

14.2. Principal components

14.3. Exploratory factor analysis

14.4. Other latent variable models

14.5. Summary

15. Advanced methods for missing data

15.1. Steps in dealing with missing data

15.2. Identifying missing values

15.3. Exploring missing values patterns

15.4. Understanding the sources and impact of missing data

15.5. Rational approaches for dealing with incomplete data

15.6. Complete-case analysis (listwise deletion)

15.7. Multiple imputation

15.8. Other approaches to missing data

15.9. Summary

16. Advanced graphics

16.1. The four graphic systems in R

16.2. The lattice package

16.3. The ggplot2 package

16.4. Interactive graphs

16.5. Summary

afterword Into the rabbit hole

Appendix A: Graphic user interfaces

Appendix B: Customizing the startup environment

Appendix C: Exporting data from R

Appendix D: Creating publication-quality output

Appendix E: Matrix Algebra in R

Appendix F: Packages used in this book

Appendix G: Working with large datasets

Appendix H: Updating an R installation


About the Technology

R is a powerful language for statistical computing and graphics that can handle virtually any data-crunching task. It runs on all important platforms and provides thousands of useful specialized modules and utilities. This makes R a great way to get meaningful information from mountains of raw data.

About the book

R in Action is a language tutorial focused on practical problems. It presents useful statistics examples and includes elegant methods for handling messy, incomplete, and nonnormal data that are difficult to analyze using traditional methods. And statistical analysis is only part of the story. You'll also master R's extensive graphical capabilities for exploring and presenting data visually.

What's inside

  • Practical data analysis, step by step
  • Interfacing R with other software
  • Using R to visualize data
  • Over 130 graphs
  • Eight reference appendixes

About the author

Dr. Rob Kabacoff is a seasoned researcher who specializes in data analysis. He has taught graduate courses in statistical programming and manages the Quick-R website at statmethods.net.

Finally, a book that brings R to the real world.

Charles Malpas, University of Melbourne

R from a programmer's point of view.

Philipp K. Janert, Principal Value, LLC

A great balance of targeted tutorials and in-depth examples.

Landon Cox, 360VL, Inc.

An excellent introduction and reference from the author of the best R website.

Christopher Williams, University of Idaho