R and MATLAB (Hardback) book cover


By David E. Hiebeler

© 2015 – Chapman and Hall/CRC

233 pages | 10 B/W Illus.

Purchasing Options:$ = USD
Hardback: 9781466568389
pub: 2015-06-02
eBook (VitalSource) : 9781466568396
pub: 2015-06-09
from $32.95

FREE Standard Shipping!
e–Inspection Copy


The First Book to Explain How a User of R or MATLAB Can Benefit from the Other

In today’s increasingly interdisciplinary world, R and MATLAB® users from different backgrounds must often work together and share code. R and MATLAB® 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.

Enables R and MATLAB Users to Easily Collaborate and Share Code

The author covers essential tasks, such as working with matrices and vectors, writing functions and other programming concepts, graphics, numerical computing, and file input/output. He highlights important differences between the two platforms and explores common mistakes that are easy to make when transitioning from one platform to the other.


"… there is more to the book than simply a guide for translating from one computing environment to the other. The author also provides many useful suggestions for effective use of both R and MATLAB. Furthermore, in many places, the author explains what each environment is actually doing when a command or routine is called. This is useful because it can serve as an indicator as to whether R or MATLAB is the more appropriate choice for a given computing task. … a highly valuable resource for anyone currently using or intending to use either. … I personally welcome the existence of this book and am very grateful to the author for putting in the work to write it. R and MATLAB is well written and should be accessible to students and researchers alike."

MAA Reviews, December 2015

"I find this text to be an important reference for many researchers (especially those in highly collaborative environments) that only know one of these two languages. In this situation, I believe this text to be an essential reference as it will make working with your collaborators more efficient. Even if you are well versed in both of these languages, I think this text can help you save time converting between the two. " (The American Statistician)

Table of Contents

Installing and Running R and MATLAB

Obtaining and installing

Commands for getting help



Additional resources

Getting Started: Variables and Basic Computations

Variable names

Assignment statements

Basic computations

Formatting of output

Other computations

Complex numbers

Strange variable names in R

Data types

Matrices and Vectors


Creating vectors

Working with vectors

Creating matrices

Working with matrices

Reshaping matrices, and higher-dimensional arrays

Sparse matrices

Names with vectors and matrices/arrays


Matrix/Vector Calculations and Functions

Applying a function to rows or columns of a matrix

Applying a function to all elements of a matrix

Linear algebra calculations with vectors and matrices

Statistical calculations

Vectorized logical tests

Other calculations

Lists and Cell Arrays

Creating lists and cell arrays

Using lists and cell arrays

Applying functions to all elements of lists and cell arrays

Converting other data types to lists and cell arrays

Converting lists and cell arrays to other data types

Flow Control

Conditional ("if") statements

"If/else" statements

"for" loops

"while" loops

Breaking out of loops

"switch" statements

"ifelse" statements in R

Running Code from Files: Scripts

Current working directory

The MATLAB search path

Executing code from a file

Creating a new script document in the editor

Comments in script files

Executing code from the editor window

Summary of differences

Writing Your Own Functions



Summary of main differences

Probability and Random Numbers

Basic random values, permutations, and samples

Random number seed

Random variates from probability distributions

PDFs, CDFs, and inverse CDFs


Creating, selecting, and closing figure windows

Basic 2-D scatterplots

Adding additional plots to a figure

Axis ranges

Logarithmic axis scales

Background grid

Plotting multiple data sets simultaneously

Axis labels and figure titles

Adding text to figures

Greek letters and mathematical symbols


Figure legends

Size and font adjustments

Two y axes

Plotting functions

Image plots and contours


3-D plotting

Multiple subplots in one figure

Saving figures

Other types of plots

Final notes about graphics

Numerical Computing


Univariate optimization

Multivariate optimization

Numerical integration

Curve fitting

Differential equations

File Input and Output

Opening files

Reading a table of numbers

Reading numeric data with a different comment character

Reading numbers from a file where different lines have varying numbers of values

Reading numbers and strings

Reading the raw character data in, a line at a time

Writing a table of numbers

Writing a set of strings

Saving and loading variables in binary format



Excel files


Working with variables

Character strings

Reading user input

Recording a copy of commands and output

Date calculations



Startup and shutdown sequences

Add-ons: packages and toolboxes

Object-oriented programming

Other interfaces


Calling C




Index of R commands, variables, and symbols

Index of MATLAB commands, variables, and symbols

About the Author

David E. Hiebeler is an associate professor in the Department of Mathematics & Statistics at the University of Maine. He earned a PhD in applied mathematics from Cornell University. His research involves mathematical and computational stochastic spatial models in population ecology and epidemiology.

About the Series

Chapman & Hall/CRC The R Series

Learn more…

Subject Categories

BISAC Subject Codes/Headings:
MATHEMATICS / Probability & Statistics / General