Create, modify, and delete columns using dplyr package in R
In this article, we will discuss mutate function present in dplyr package in R Programming Language to create, modify, and delete columns of a dataframe.
Create new columns
Columns can be inserted either by appending a new column or using existing columns to evaluate a new column. By default, columns are added to the far right. Although columns can be added to any desired position using .before and .after arguments
Syntax:
mutate(dataframe , columns)
Parameters:
- dataframe is the input dataframe
- columns are the new columns that are added to the dataframe
- .before(by default = NULL)
- .after(by default = NULL)
Example:
R
library (dplyr) # create a data frame d <- data.frame (FirstName= c ( "Suresh" , "Ramesh" , "Tanya" , "Sujata" ), Salary= c (50000, 60000, 70000, 80000), Expenses= c (20000, 15000, 30000, 25000)) print (d) # adding new columns d <- mutate (d, Age= c (25, 28, 22, 27), Savings=Salary - Expenses) print (d) # adding a new column before FirstName d <- mutate (d, Title= c ( "Mr" , "Mr" , "Ms" , "Ms" ), .before=FirstName) print (d) # adding a new column after FirstName d <- mutate (d, LastName= c ( "Singh" , "Pande" , "Sinha" , "Roy" ), .after=FirstName) print (d) |
Output:
FirstName Salary Expenses Suresh 50000 20000 Ramesh 60000 15000 Tanya 70000 30000 Sujata 80000 25000 FirstName Salary Expenses Age Savings Suresh 50000 20000 25 30000 Ramesh 60000 15000 28 45000 Tanya 70000 30000 22 40000 Sujata 80000 25000 27 55000 Title FirstName Salary Expenses Age Savings Mr Suresh 50000 20000 25 30000 Mr Ramesh 60000 15000 28 45000 Ms Tanya 70000 30000 22 40000 Ms Sujata 80000 25000 27 55000 Title FirstName LastName Salary Expenses Age Savings Mr Suresh Singh 50000 20000 25 30000 Mr Ramesh Pande 60000 15000 28 45000 Ms Tanya Sinha 70000 30000 22 40000 Ms Sujata Roy 80000 25000 27 55000
Delete Columns
Columns can be deleted from the existing data frame by setting the value of the desired column to NULL.
Syntax:
mutate(dataframe,columns = NULL)
Parameter:
- It takes only one parameter that is column name to be deleted
Example:
R
library (dplyr) # Create a data frame d <- data.frame ( FirstName = c ( "Suresh" , "Ramesh" , "Tanya" , "Sujata" ), Salary = c (50000,60000,70000,80000), Expenses = c (20000,15000,30000,25000)) print (d) # Delete Expenses column d <- mutate (d,Expenses = NULL ) print (d) |
Output:
FirstName Salary Expenses Suresh 50000 20000 Ramesh 60000 15000 Tanya 70000 30000 Sujata 80000 25000 FirstName Salary Suresh 50000 Ramesh 60000 Tanya 70000 Sujata 80000
Modify Columns
Existing columns can be modified by assigning new values to desired columns.
Syntax:
mutate(dataframe,column_name=new_values)
Parameters: It will take two parameters
- dataframe is the input dataframe
- column_name is the name of the column to modify the values
Example:
R
library (dplyr) # Create a data frame d < - data.frame (FirstName= c ( "Suresh" , "Ramesh" , "Tanya" , "Sujata" ), Salary= c (50000, 60000, 70000, 80000), Expenses= c (20000, 15000, 30000, 25000)) print (d) # Modify FirstName, Salary column d < - mutate (d, FirstName= c ( "Mahesh" , "Jignesh" , "Ria" , "Tanya" ), Salary= c (60000, 30000, 50000, 75000)) print (d) |
FirstName Salary Expenses Suresh 50000 20000 Ramesh 60000 15000 Tanya 70000 30000 Sujata 80000 25000 FirstName Salary Expenses Mahesh 60000 20000 Jignesh 30000 15000 Ria 50000 30000 Tanya 75000 25000