The append() function in R concatenates values to a vector or list at a specified position. It returns a new object without modifying the original.
You can add a single or multiple elements to a vector or list.
append(obj, values, after = length(x))
Name | Value |
obj | It is an original vector or list. |
value | It is the value(s) to be appended to the vector or list. |
index | It is a position to insert values (default: end). |
By default, the append() function will append an element at the end of the vector if you don’t specify the position.
data <- 1:3
element <- 19
cat(data, "\n")
modified_vec <- append(data, element)
cat("After appending an element to a vector", "\n")
cat(modified_vec)
Output
1 2 3
After appending an element to a vector
1 2 3 19
When you append multiple elements to a vector, you can append them as a separate vector rather than as individual elements. What I mean by this is that If you have multiple elements, then create a vector of it and then append it to an existing vector. That way, you have an output vector that contains multiple appended elements.
v1 <- 1:3
v2 <- 19:21
cat("Before appending elements to v1", "\n")
cat(v1, "\n")
modified_data <- append(v1, v2)
cat("After appending multiple elements to a v1", "\n")
cat(modified_data)
Output
Before appending elements to v1
1 2 3
After appending multiple elements to a v1
1 2 3 19 20 21
The function provides an “after” argument that you can use to pinpoint a specific position and append to it.
v1 <- 1:4
v2 <- 19
cat("Before adding element to v1", "\n")
cat(v1, "\n")
cat("Appending element after index 2", "\n")
modified_data <- append(v1, v2, 2)
cat(modified_data)
Output
Before adding element to v1
1 2 3 4
Appending element after index 2
1 2 19 3 4
As we discussed earlier, the append() function can also be used to add elements to a list. Its usage is not limited to a vector.
main_list <- list(a = 1, b = 2)
element <- list(c = 3)
append(main_list, element) # Adds 'c=3' to the end
Output
$a
[1] 1
$b
[1] 2
$c
[1] 3
When you append multiple elements to a list, you can append them as a separate list rather than as individual elements.
main_list <- list(a = 1, b = 2)
append_list <- list(c = 3, d = 4, e = 5)
append(main_list, append_list)
Output
$a
[1] 1
$b
[1] 2
$c
[1] 3
$d
[1] 4
$e
[1] 5
Same as a vector, you can specify the “after” argument to define the exact position of insertion. It will append after that index that you defined.
main_list <- list(a = 1, b = 2, c=3)
append_list <- list(d = 4)
append(main_list, append_list, after = 1) # Inserts after the first element
Output
$a
[1] 1
$d
[1] 4
$b
[1] 2
$c
[1] 3
You can see that we appended after index 1, which is position number 2. List index starts with 1.
Krunal Lathiya is a seasoned Computer Science expert with over eight years in the tech industry. He boasts deep knowledge in Data Science and Machine Learning. Versed in Python, JavaScript, PHP, R, and Golang. Skilled in frameworks like Angular and React and platforms such as Node.js. His expertise spans both front-end and back-end development. His proficiency in the Python language stands as a testament to his versatility and commitment to the craft.
R cbind (column bind) is a function that combines specified vectors, matrices, or data frames…
The rbind() function combines R objects, such as vectors, matrices, or data frames, by rows.…
The as.numeric() function in R converts valid non-numeric data into numeric data. What do I…
The log() function calculates the natural logarithm (base e) of a numeric vector. By default,…
In R, you can use the dollar sign ($ operator) to access elements (columns) of…
The abs() function calculates the absolute value of a numeric input, returning a non-negative (only…