Add New Column to Data Frame in R
In this tutorial, I’ll illustrate how to add a new column to a data frame in R programming.
The table of content looks like this:
- Creation of Example Data
- Example 1: Add Column with $-Operator
- Example 2: Add Column with Square Brackets
- Example 3: Add Column with cbind Function
- Video, Further Resources & Summary
Let’s dig in.
Creation of Example Data
The examples of this R tutorial will be based on the following data frame:
data <- data.frame(x1 = 1:5, # Create example data x2 = letters[1:5]) data # Print example data # x1 x2 # 1 1 a # 2 2 b # 3 3 c # 4 4 d # 5 5 e
Our example data consists of five rows and the two variables x1 and x2.
Furthermore, we have to create an example vector that we can add as new column to our data frame:
vec <- c(3, 2, 3, 2, 3) # Create example vector vec # Print example vector # 3 2 3 2 3
Now, let’s add the vector as new variable to our data frame…
Example 1: Add Column with $-Operator
In Example 1, you’ll learn how to add a new column to a data frame with the $-Operator. First, we are going to replicate our original example data:
data_1 <- data # Replicate example data
Now, we can add our example vector to the data frame as follows:
data_1$new_col <- vec # Add new column to data
Let’s print the new data frame to the RStudio console:
data_1 # Print new data # x1 x2 new_col # 1 1 a 3 # 2 2 b 2 # 3 3 c 3 # 4 4 d 2 # 5 5 e 3
As you can see, the new data frame consists of the same variables as our input data and in addition of the new variable new_col.
Example 2: Add Column with Square Brackets
Example 1 has shown how to add a new variable to a data frame with the $-Operator. However, there are many different ways how to do this and in this example I’ll show you how to concatenate a vector to a data frame with square brackets.
Have a look at the following R code:
data_2 <- data # Replicate example data data_2["new_col"] <- vec # Add new column to data
data_2 contains our original data as well as our example vector vec.
Example 3: Add Column with cbind Function
Another alternative for creating new variables in a data frame is the cbind function. The cbind function can be used to add columns to a data matrix as follows:
data_3 <- data # Replicate example data data_3 <- cbind(data, new_col = vec) # Add new column to data
Again, the output is a data frame consisting of our original data and a new column.
Video, Further Resources & Summary
Do you need more information on the contents of this article? Then you may want to have a look at the following video of my YouTube channel. In the video tutorial, I’m explaining the contents of this article in RStudio:
Please accept YouTube cookies to play this video. By accepting you will be accessing content from YouTube, a service provided by an external third party.
If you accept this notice, your choice will be saved and the page will refresh.
Furthermore, you might want to have a look at the other tutorials of my website. Some tutorials about data manipulation in R can be found below:
- The cbind Function
- Append New Column & Row to Data Frame in for-Loop
- How to Rename a Column Name in R
- Convert Data Frame Column to Vector in R
- The R Programming Language
In this R tutorial you learned how to append a vector to a data frame. Don’t hesitate to let me know in the comments section, if you have further questions.
Statistics Globe Newsletter