Skip to Content

Remove Duplicates From a Vector in R

In this tutorial, we will look at how to remove duplicates from a vector in R with the help of some examples.

How do I remove duplicates from a vector in R?

You can use the R built-in unique() function to remove duplicates from a vector. Pass the vector from which you want to remove the duplicates as an argument.

The following is the syntax –

# remove duplicates from vector vec
unique(vec)

If you pass a vector to the unique() function, it will return a vector with the duplicates removed.

You can also use the unique() function to remove duplicates from an array or a dataframe in R.

Examples

Let’s now look at some examples of using the above function.

Remove duplicates from a vector

Let’s create a vector of some numbers having duplicate values and then apply the unique() function to see what we get.

# create a vector
vec <- c(1, 2, 2, 3, 4, 4, 4)
# remove duplicates from vec
print(unique(vec))

Output:

[1] 1 2 3 4

You can see that the resulting vector contains only the unique elements from the original vector.

Remove duplicates from a vector with NA values

What would happen if you try to remove duplicates from a vector containing NA values?

Let’s find out.

# create a vector
vec <- c(1, 2, 2, 3, NA, 4, 4, NA, 4)
# remove duplicates from vec
print(unique(vec))

Output:

[1]  1  2  3 NA  4

Here, we apply the unique() function on a vector containing some NA values as well. You can see that the resulting vector contains only distinct values.

We only get one occurrence of NA inside the resulting vector with the duplicates removed.

If you don’t want the NA values, you can either remove them before or after applying the unique() function.

You might also be interested in –


Subscribe to our newsletter for more informative guides and tutorials.
We do not spam and you can opt out any time.


Author

  • Piyush Raj

    Piyush is a data professional passionate about using data to understand things better and make informed decisions. In the past, he's worked as a Data Scientist for ZS and holds an engineering degree from IIT Roorkee. His hobbies include watching cricket, reading, and working on side projects.