# %notin% Operator in R

The %notin% operator stands for NOT IN. It is a binary operator that takes two vectors as arguments and returns a logical vector that is TRUE if the first argument is not present in the second argument. There is no built-in symbol for the NOT IN operator in R. But we can define the symbol for it using the IN operator (%in%). In this guide, we will be discussing the %notin% operator in R.

## Defining the %notin% Operator in R

We can use the IN operator (%in%) and negate it to create the symbol for the NOT IN operator. Use the following code to define the %notin% operator:

`'%notin%' = Negate('%in%')`

#### Syntax of the %notin% Operator

`left_operand %notin% right_operand`

#### Arguments

• left_operand = It is the vector of values that you want to check.
• right_operand = It is the vector of values that you want to check the left_operand against.

The %notin% operator will return a logical vector indicating which values in the left_operand are not present in the right_operand.

### Example 1: Using %notin% to Check Values in a Vector

The example below shows how you can use the %notin% operator to check if any value lies in the vector.

```# defining the NOT IN operator
'%notin%' = Negate('%in%')
# creating a vector
x &lt;- c(10,20,30,40,50)
# checking if 50 doesn’t lie in the vector
50 %notin% x
# checking if 25 doesn’t lie in the vector
25 %notin% x```

Output

``` FALSE
 TRUE```

In the above example, the %notin% operator returns FALSE and TRUE because 50 is present inside the vector x while 25 isn’t.

### Example 2: Using %notin% to Compare Vectors

Here is an example of how to use the %notin% operator to compare vectors:

```# defining the NOT IN operator
'%notin%' = Negate('%in%')
# creating vectors
x &lt;- c("a", "b", "c")
y &lt;- c("b", "c", "d")
# comparing the vectors
x %notin% y```

Output

` TRUE FALSE FALSE`

As you can see, the %notin% operator returns TRUE for the first element in the vector x because it is not present in the vector y.

### Example 3: Using %notin% to Check Values in Data Frame

Let’s say you have a data frame containing student GPAs, and you want to check if any missing values are there in the gpa column.

```# defining the NOT IN operator
'%notin%' = Negate('%in%')
# creating a data frame
student_gpas &lt;- data.frame(
student_id = c(1, 2, 3, 4, 5),
gpa = c(3.5, 4.0, NA, 3.2, NA)
)
# checking if there is no NA in gpa column
NA %notin% student_gpas\$gpa```

Output

` FALSE`

As you can see, the %notin% operator returns FALSE because NA values are present in the gpa column.