Functions

A function is a block of organized and reusable code that is used to perform a specific task in a program. A function is created by using the function keyword.
The basic syntax of a function is given below:

FunctionName <- function(arg1, arg2, ...) {
Function Body
}

Want to get certified in R! Learn R from top R experts and excel in your career with Intellipaat’s R Programming certification!

where,

  • FunctionName is the name of a function that is stored as an R object.
  • Arguments are used to provide specific inputs to a function while a function is invoked. A function can have zero, single, multiple, or default arguments.
  • Function Body contains the block of code that performs the specific task assigned to a function.
  • Return Value is the value that a function returns when it succeeds in performing the task. We can also make a function with no return value.

So now that we have learned what functions in R programming are, let’s have a quick rundown of all the topics that will be covered in this tutorial

There are two types of functions in R:

  • In-built functions
  • User-defined functions

We have the perfect professional R Programming Training Course for you!

In-built Functions

These functions in R programming are provided by R environment for direct execution, to make our work easier.
Some examples for the frequently used in-built functions are as follows:

#seq() To create a sequence of numbers
print(seq(1,9))

Output:

[1] 1 2 3 4 5 6 7 8 9
#sum() To find the sum of numbers
print(sum(25,50))

Output:

 [1] 75
#mean() To find the mean of numbers
print(mean(41:68))

Output: [1] 54.5

#paste() To combine vectors after converting them to characters
paste(1,"sam",2,"rob",3,"max")

Output:

[1] "1 sam 2 rob 3 max"
paste(1,"sam",2,"rob",3,"max", sep = ',')      #sep is used to separate the values

We have the perfect professional R Programming Training in Toronto for you!

Output:

 [1] "1,sam,2,rob,3,max"
paste(1:3, c("sam","rob","max"), sep = '-', collapse = " and ") 
#collapse is used to separate the values when a vector is passed

Output:

 [1] "1-sam and 2-rob and 3-max"
#paste0() Has default sep=“” argument
paste0(1,"sam",2,"rob",3,"max")

Output:

 [1] "1sam2rob3max"
paste0(1:3, c("sam","rob","max"), collapse = " and ")

Output:

 [1] "1sam and 2rob and 3max"
head(x,n) #To retrieve the first n rows of a matrix, data frame, or a vector
x = data frame, matrix, or vector
n = number of rows to be retrieved
empid <- c(1:4)
empname <- c("Sam","Rob","Max","John")
empdept <- c("Sales","Marketing","HR","R & D")
emp.data <- data.frame(empid,empname,empdept)
print(head(emp.data,3))

Output:

           empid     empname       empdept
1           1          Sam            Sales
2           2          Rob        Marketing
3           3          Max             HR
tail(x,n) #To retrieve the last n rows of a matrix, data frame, or a vector
x = data frame, matrix, or vector
n = number of rows to be retrieved
empid <- c(1:4)
empname <- c("Sam","Rob","Max","John")
empdept <- c("Sales","Marketing","HR","R & D")
emp.data <- data.frame(empid,empname,empdept)
print(tail(emp.data,2))

Output:

         empid      empname        empdept
3          3          Max            HR
4          4          John         R & D
min() To return the minimum value from a vector.
x <- c(3,45,6,7,89,9)print(min(x))
#max() To return the maximum value from a vector
x <- c(3,45,6,7,89,9)
print(max(x))

Output:

[1] 3
[1] 89
#range() To return the minimum and maximum values from a vector
x <- c(3,45,6,7,89,9)
range(x)
x <- c(3,45,-6,7,89,Inf,9)
range(x)
x <- c(3,45,-6,7,NA,89,Inf,9)
range(x)
x<- c(3,45,-6,7,NA,89,Inf,9)
range(x, na.rm = TRUE)            To remove NA from the result (na.rm) is used

Output:

[1]  3 89
[1]  -6 Inf
[1] NA NA
[1]  -6 Inf
#which.min() To return the index of the minimum value from a vector
x <- c(3,45,6,7,89,9)
print(which.min(x))
#which.max() To return the index of the maximum value from a vector
x <- c(3,45,6,7,89,9)
print(which.max(x))

Output:

[1] 1
[1] 5

Wish to crack Big Data job interviews? Intellipaat’s Top R Programming Interview Questions are meant only for you!

User-defined Functions

These functions in R programming language are declared, and defined by a user according to the requirements, to perform a specific task.
For example:

#Create a function to print the sum of squares of numbers in sequence
sum = 0
Function1 <- function(x) {  
for(i in 1:x) {     
a <- i^2     
 sum = sum + a     
print(sum)  
}
}         
#Calling a function
Function1(5)

Output:

[1] 1
[1] 5
[1] 14
[1] 30
[1] 55
#Function without an Argument
sum = 0
Function1 <- function() {
for(i in 1:5) {     
a <- i^2     
sum = sum + a     
print(sum)  
}
}         
#Calling a function
Function1()

Output:

[1] 1
[1] 5
[1] 14
[1] 30
[1] 55
#Create a function to print the sum of squares of three numbers
Function1 <- function(x,y,z) {
sum = x^2 + y^2 + z^2
print(sum)
}
}
#Calling a function
Function1(2,4,6)                                    #Call by position of arguments
Function1(x=3,y=5,z=7)                       #Call by names of arguments

 

Output:

[1] 56
[1] 83
Function1 <- function(x=4,y=5,z=6) {
      sum = x^2 + y^2 + z^2     
      print(sum)  
} 
#Calling a function
Function1()                  #Calling a function with default arguments
Function1(6,7,8)             #Passing new values to replace default arguments

If you have any doubts or queries related to R Programming, get them clarified from the R experts on our R Programming Community!

Output:

[1] 77
[1] 149

In this tutorial we learned what functions in R programming are, the basic syntax of functions in R programming, in-built functions and how to use them to make our work easier, the syntax of a user-defined function, and different types of user-defined functions. In the next session, we are going to learn how to read files in R programming.

For the best of career growth, check out Intellipaat’s R Programming training in Hyderabad and get certified!

Recommended Videos

Leave a Reply

Your email address will not be published. Required fields are marked *