Using the $ operator or square bracket, we can add a column to a data frame. We can also create vector data and add it as a column to a data frame.
Use the add_column function in the tibble package to add a new column or append vector to a data frame.
In this tutorial, we will discuss how to add a column to a data frame in R using the $ operator and square bracket and add_column to append a column to a data frame.
Add Column to a Data Frame in R using $ operator
Using the $ operator to add a new column to an existing data frame.
Let’s consider an example to demonstrate how to append a vector to a data frame.
# Create a data frame
student_info <- data.frame(
name = c("Tom","Kim","Sam","Julie","Emily","Chris"),
age = c(20,21,19,20,21,22),
gender = c('M','F','M','F','F','M')
)
# Print the data frame
student_info
In the above R code, we have created an example data frame to add a new column using the $ operator.
Let’s create a new column vector.
marks <- c(72,77,65,80,85,87)
Using the existing data frame, append new vector marks to it using the $ operator.
# Add new column to an existing data frame
student_info$marks <- marks
# Print the data frame
The output of the above R code to append a new column to the data frame in R is:
name age gender marks
1 Tom 20 M 72
2 Kim 21 F 77
3 Sam 19 M 65
4 Julie 20 F 80
5 Emily 21 F 85
6 Chris 22 M 87
Adding a Column to Data Frame in R using Brackets
Using the square brackets ([]) with the data frame object, we can add a new column to a data frame.
Let’s practice with the above student_info data frame for adding a column to a data frame.
# Append a vector to data frame
student_info["marks"] = marks
# Prints the data frame
student_info
In the above R code, we have specified marks as a new column in the data frame variable with a square bracket and assigned vector.
It adds a new column to the data frame and prints the data frame as follows:
name age gender marks
1 Tom 20 M 72
2 Kim 21 F 77
3 Sam 19 M 65
4 Julie 20 F 80
5 Emily 21 F 85
6 Chris 22 M 87
Append New Column to a Data Frame using tidyverse package
Using the tidyverse package and tibble, it can append a new column to a data frame.
Let’s consider the above student_info data frame to add a new column to an existing data frame using the add_column function.
# import tidyverse library
library(tidyverse)
# use pipe operator and add_column to create new column in data frame
data <- student_info %>% add_column(total_marks = marks)
# print the data frame
data
In the above R code to create a new column in a data frame, we first import the tidyverse package and added a new column using tibble.
The output of the new column in a data frame is:
name age gender total_marks
1 Tom 20 M 72
2 Kim 21 F 77
3 Sam 19 M 65
4 Julie 20 F 80
5 Emily 21 F 85
6 Chris 22 M 87
Add New Column to Data Frame after the Column
Using the add_column function() in the tibble package, it can add a new column to the existing data frame at a specific position.
Let’s practice with the above student_info data frame to append a new column after a specific column in the existing data frame.
# Append new column to data frame after specific column
student_data <- student_info %>% add_column(total_marks = marks,.after = "age")
# Print the data frame
student_data
In the above R code, using the add_column function in R, it added the total_marks column to an existing data frame after the age column.
The output of the above R code is:
name age total_marks gender
1 Tom 20 72 M
2 Kim 21 77 F
3 Sam 19 65 M
4 Julie 20 80 F
5 Emily 21 85 F
6 Chris 22 87 M
Conclusion
I hope the above article about how to add a new column to the data frame in R is helpful to you.
Using the $ operator or square bracket ([]), you can append a new column to a data frame.
You can use the add_column function of the tibble package in tidyverse to add a new column to an existing data frame. It can also add a new column to a specific position in an existing data frame.