The Art of R Programming: A Tour of Statistical Software Design

The Art of R Programming: A Tour of Statistical Software Design

4.02 (367 ratings by Goodreads)
By (author) 

Free delivery worldwide

Available. Dispatched from the UK in 2 business days
When will my order arrive?


R is the world's most popular language for developing statistical software: Archaeologists use it to track the spread of ancient civilizations, drug companies use it to discover which medications are safe and effective, and actuaries use it to assess financial risks and keep economies running smoothly. The Art of R Programming takes you on a guided tour of software development with R, from basic types and data structures to advanced topics like closures, recursion, and anonymous functions. No statistical knowledge is required, and your programming skills can range from hobbyist to pro. Along the way, you'll learn about functional and object-oriented programming, running mathematical simulations, and rearranging complex data into simpler, more useful formats. You'll also learn to: * Create artful graphs to visualize complex data sets and functions * Write more efficient code using parallel R and vectorization * Interface R with C/C++ and Python for increased speed or functionality * Find new R packages for text analysis, image manipulation, and more * Squash annoying bugs with advanced debugging techniques Whether you're designing aircraft, forecasting the weather, or you just need to tame your data, The Art of R Programming is your guide to harnessing the power of statistical more

Product details

  • Paperback | 400 pages
  • 176 x 234 x 26mm | 780.17g
  • No Starch Press,US
  • Daly City, California, United States
  • English
  • black & white illustrations, black & white tables, figures
  • 1593273843
  • 9781593273842
  • 42,382

About Norman Matloff

Norman Matloff, Ph.D., is a Professor of Computer Science at the University of California, Davis. He is the creator of several popular software packages, as well as a number of widely-used Web tutorials on computer topics. He has written articles for the New York Times, the Washington Post, Forbes Magazine, the San Francisco Chronicle, and the Los Angeles Times, among others, and is also the author, with Peter Jay Salzman, of The Art of Debugging (No Starch Press).show more

Table of contents

Acknowledgments; Introduction; Why Use R for Your Statistical Work?; Whom Is This Book For?; My Own Background; Chapter 1: Getting Started; 1.1 How to Run R; 1.2 A First R Session; 1.3 Introduction to Functions; 1.4 Preview of Some Important R Data Structures; 1.5 Extended Example: Regression Analysis of Exam Grades; 1.6 Startup and Shutdown; 1.7 Getting Help; Chapter 2: Vectors; 2.1 Scalars, Vectors, Arrays, and Matrices; 2.2 Declarations; 2.3 Recycling; 2.4 Common Vector Operations; 2.5 Using all() and any(); 2.6 Vectorized Operations; 2.7 NA and NULL Values; 2.8 Filtering; 2.9 A Vectorized if-then-else: The ifelse() Function; 2.10 Testing Vector Equality; 2.11 Vector Element Names; 2.12 More on c(); Chapter 3: Matrices and Arrays; 3.1 Creating Matrices; 3.2 General Matrix Operations; 3.3 Applying Functions to Matrix Rows and Columns; 3.4 Adding and Deleting Matrix Rows and Columns; 3.5 More on the Vector/Matrix Distinction; 3.6 Avoiding Unintended Dimension Reduction; 3.7 Naming Matrix Rows and Columns; 3.8 Higher-Dimensional Arrays; Chapter 4: Lists; 4.1 Creating Lists; 4.2 General List Operations; 4.3 Accessing List Components and Values; 4.4 Applying Functions to Lists; 4.5 Recursive Lists; Chapter 5: Data Frames; 5.1 Creating Data Frames; 5.2 Other Matrix-Like Operations; 5.3 Merging Data Frames; 5.4 Applying Functions to Data Frames; Chapter 6: Factors and Tables; 6.1 Factors and Levels; 6.2 Common Functions Used with Factors; 6.3 Working with Tables; 6.4 Other Factor- and Table-Related Functions; Chapter 7: R Programming Structures; 7.1 Control Statements; 7.2 Arithmetic and Boolean Operators and Values; 7.3 Default Values for Arguments; 7.4 Return Values; 7.5 Functions Are Objects; 7.6 Environment and Scope Issues; 7.7 No Pointers in R; 7.8 Writing Upstairs; 7.9 Recursion; 7.10 Replacement Functions; 7.11 Tools for Composing Function Code; 7.12 Writing Your Own Binary Operations; 7.13 Anonymous Functions; Chapter 8: Doing Math and Simulations in R; 8.1 Math Functions; 8.2 Functions for Statistical Distributions; 8.3 Sorting; 8.4 Linear Algebra Operations on Vectors and Matrices; 8.5 Set Operations; 8.6 Simulation Programming in R; Chapter 9: Object-Oriented Programming; 9.1 S3 Classes; 9.2 S4 Classes; 9.3 S3 Versus S4; 9.4 Managing Your Objects; Chapter 10: Input/Output; 10.1 Accessing the Keyboard and Monitor; 10.2 Reading and Writing Files; 10.3 Accessing the Internet; Chapter 11: String Manipulation; 11.1 An Overview of String-Manipulation Functions; 11.2 Regular Expressions; 11.3 Use of String Utilities in the edtdbg Debugging Tool; Chapter 12: Graphics; 12.1 Creating Graphs; 12.2 Customizing Graphs; 12.3 Saving Graphs to Files; 12.4 Creating Three-Dimensional Plots; Chapter 13: Debugging; 13.1 Fundamental Principles of Debugging; 13.2 Why Use a Debugging Tool?; 13.3 Using R Debugging Facilities; 13.4 Moving Up in the World: More Convenient Debugging Tools; 13.5 Ensuring Consistency in Debugging Simulation Code; 13.6 Syntax and Runtime Errors; 13.7 Running GDB on R Itself; Chapter 14: Performance Enhancement: Speed and Memory; 14.1 Writing Fast R Code; 14.2 The Dreaded for Loop; 14.3 Functional Programming and Memory Issues; 14.4 Using Rprof() to Find Slow Spots in Your Code; 14.5 Byte Code Compilation; 14.6 Oh No, the Data Doesn't Fit into Memory!; Chapter 15: Interfacing R to Other Languages; 15.1 Writing C/C++ Functions to Be Called from R; 15.2 Using R from Python; Chapter 16: Parallel R; 16.1 The Mutual Outlinks Problem; 16.2 Introducing the snow Package; 16.3 Resorting to C; 16.4 General Performance Considerations; 16.5 Debugging Parallel R Code; Installing R; Downloading R from CRAN; Installing from a Linux Package Manager; Installing from Source; Installing and Using Packages; Package Basics; Loading a Package from Your Hard Drive; Downloading a Package from the Web; Listing the Functions in a Package; Colophon;show more
Book ratings by Goodreads
Goodreads is the world's largest site for readers with over 50 million reviews. We're featuring millions of their reader ratings on our book pages to help you find your new favourite book. Close X