The R language is a collection of functions; a user can apply built-in functions from various packages to their project, or they can define a function for a particular purpose. In this recipe, we will show you how to create an R function.

If you are new to the R language, you can find a detailed introduction, language history, and functionality on the official R site (http://www.r-project.org/). When you are ready to download and install R, please connect to the comprehensive R archive network (http://cran.r-project.org/).

Perform the following steps in order to create your first R function:

Type the following code on your R console to create your first function:

**>addnum<- function(x, y){****+ s <- x+y****+ return(s)****+ }**Execute the

`addnum`

user-defined function with the following command:**>addnum (3,7)****[1] 10**Or, you can define your function without a

`return`

statement:**>addnum2<- function(x, y){****+ x+y****+ }**Execute the

`addnum2`

user-defined function with the following command:**>addnum2(3,7)****[1] 10**You can view the definition of a function by typing its function name:

**>addnum2****function(x, y){****x+y****}**Finally, you can use body and formals to examine the

`body`

and`formal`

arguments of a function:**>body(addnum2)****{****x + y****}****>formals(addnum2)****$x****$y****>args(addnum2)****function (x, y)****NULL**

R functions are a block of organized and reusable statements, which makes programming less repetitive by allowing you to reuse code. Additionally, by modularizing statements within a function, your R code will become more readable and maintainable.

By following these steps, you can now create two `addnum`

and `addnum2`

R functions, and you can successfully add two input arguments with either function. In R, the function usually takes the following form:

FunctionName<- function (arg1, arg2) {bodyreturn(expression)}

`FunctionName`

is the name of the function, and `arg1`

and `arg2`

are arguments. Inside the curly braces, we can see the function body, where a body is a collection of a valid statement, expression, or assignment. At the bottom of the function, we can find the `return`

statement, which passes expression back to the caller and exits the function.

The `addnum`

function is in standard function syntax, which contains both `body`

and `return`

statement. However, you do not necessarily need to put a `return`

statement at the end of the function. Similar to the `addnum2`

function, the function itself will return the last expression back to the caller.

If you want to view the composition of the function, simply type the function name on the interactive shell. You can also examine the `body`

and `formal`

arguments of the function further using the `body`

and `formal`

functions. Alternatively, you can use the `args`

function to obtain the argument list of the function.