Functions in R Programming is a block of code, or some logic wrapped inside the curly braces { }, which performs specific operation. In this R Programming tutorial journey, We already seen some functions, and you may not noticed them. For instance, print, abs(), sqrt() etc. are some of the built-in functions in R programming language.

## Syntax of a Functions in R Programming

The basic syntax of the Functions in R Programming language is as shown below:

Function_Name <- function (arguments) { Local Variable Declaration; Logic; Executable Statement 1; …… Executable Statement n; }

Arguments are:

**Function_Name:**It can be any name you wish to give. Avoid using the system reserved keywords.**Arguments:**Every function accepts 0 or more arguments, and it is completely depends upon the user requirements. For example add(2, 3)**Local Variable Declaration:**Sometimes, we may need some temporary variable to perform the operation within the particular function. Then we can declare those variables inside the function. Remember, these variables are available to this particular function only, we can’t access them outside this function.**Logic:**Any mathematical, or any type of calculations you want to implement.**Executable Statement:**Any print statements to print some data from this particular function.

### R Function Types

There are two types of functions in R Programming language:

**Library Functions:**All the built-in functions supported by the R Language, or the R packages are called as Library function. You no need to worry about the logic inside the Library functions. In our previous articles, We used many library functions such as print(), sqrt() etc.**User Defined Functions:**Instead of relying only on built-in functions, R Programming allows us to create our own functions called as user defined functions. For example, if we want to calculate the Sales profits, or any mathematical calculations then we can place them in separate function with proper function name, and later we can call that function multiple time.

### Advantages of functions in R Programming

- R Functions will help us to divide the large programs into small groups. So that, you can debug the program quicker, and better.
- Multiple persons can work on same program by assigning different functions to each of them.
- You can call the same function multiple times (over and over).
**Code re-usability:**Prevent us from writing same logic multiple times.

## R Functions implementation

To implement the function in R program we have follow few rules such as:

### Function Declaration

We can declare the function a following:

add <- function(x, y) { }

### Calling the Function in R Programming

It is nothing but calling the original function with valid number of arguments. For example, add (2, 3)

**NOTE:** User defined function name should exactly match with the calling function.

### R Function Definition in C Programming

This is the place where we are going to put all the logics, calculations etc. We can place this function definition either Before the main () function or After the main () function.

For example,

# Example For R Functions add.numbers <- function(a, b) { return(a + b) } add.numbers(10, 2)

**OUTPUT**

Typical way – In detail

# Example For R Functions add.numbers <- function(a, b) { Sum <- 0 Sum = a + b return (Sum) } add.numbers(50, 70)

**OUTPUT**

**NOTE:** If you defined the function other than void return type, Please don’t forget the return keyword.

## Sum and Average of 3 Numbers using R Functions

In this program we will calculate the Sum and Average of the three numbers.

**CODE**

# R Functions Example sum.numbers <- function(a, b, c) { Sum = a + b + c Average = Sum/3 print(paste("Sum of ",a, ",", b, ",", c, "is = ", Sum)) print(paste("Average of ",a, ",", b, ",", c, "is = ", Average)) } sum.numbers(20, 10, 70)

**OUTPUT**

Or we can allow the user to input the Values for a, b, and c

**CODE**

# R FUnctions Example sum.numbers <- function(a, b, c) { a <- readline(prompt="Enter a Value: ") b <- readline(prompt="Enter b Value: ") c <- readline(prompt="Enter c Value: ") # convert character into integer a <- as.integer(a) b <- as.integer(b) c <- as.integer(c) Sum = a + b + c Average = Sum/3 print(paste("Sum of ",a, ",", b, ",", c, "is = ", Sum)) print(paste("Average of ",a, ",", b, ",", c, "is = ", Average)) } sum.numbers(a, b, c)

**OUTPUT**

**ANALYSIS**

First we declared the function by assigning the name sum.numbers. If you forget this function declaration then the compiler will throw an error.

sum.numbers <- function(a, b, c)

Below statement will ask the user to enter the values for a, b, c

a <- readline(prompt="Enter a Value: ") b <- readline(prompt="Enter b Value: ") c <- readline(prompt="Enter c Value: ")

In the next line, we are converting the user entered values to integers using **as.integer** function

a <- as.integer(a) b <- as.integer(b) c <- as.integer(c)

Next, we are calculating the Sum, and Average of user entered values

Sum = a + b + c Average = Sum/3

In this example, we assigned the values of a, b, c as 10, 20, 30. It means,

- Sum = a + b + c
- Sum = 10 + 20 + 30
- Sum = 60
- Average = Sum / 3
- Average = 60 / 3
- Average = 20

Below print statements are used to print the sum and average as the output

print(paste("Sum of ",a, ",", b, ",", c, "is = ", Sum)) print(paste("Average of ",a, ",", b, ",", c, "is = ", Average))

Thank you for Visiting Our Blog