Functions

A function is an object in R that takes some input objects (called the arguments of the function) and returns an output object. All work in R is done by functions. Every statement in R—setting variables, doing arithmetic, repeating code in a loop—can be written as a function. For example, suppose that you had defined a variable animals pointing to a character vector with four elements: “cow,” “chicken,” “pig,” and “tuba.” Here is a statement that assigns this variable:

> animals <- c("cow", "chicken", "pig", "tuba")

Suppose that you wanted to change the fourth element to the word “duck.” Normally, you would use a statement like this:

> animals[4] <- "duck"

This statement is parsed into a function call to the [<- function. So, you could actually use this equivalent expression:[12]

> `[<-`(animals,4,"duck")

In practice, you would probably never write this statement as a function call; the bracket notation is much more intuitive and much easier to read. However, it is helpful to know that every operation in R is a function. Because you know that this assignment is really a function call, it means that you can inspect the code of the underlying function, search for help on this function, or create methods with the same name for your own object classes.[13]

Here are a few more examples of R syntax and the corresponding function calls:

> # pretty assignment > apples <- 3 > # functional form of assignment > `<-`(apples,3) > apples [1] 3 > # another assignment statement, so that we can ...

Get R in a Nutshell now with the O’Reilly learning platform.

O’Reilly members experience books, live events, courses curated by job role, and more from O’Reilly and nearly 200 top publishers.