Logical operators
   get_help() docs


Description

Logical operators are symbols you can make comparisons with that tell you TRUE or FALSE. A logical statement is any piece of code that evaluates to TRUE or FALSE, i.e. code that uses a logical operator. Note that in other computing languages, these operators and statements are often called “boolean” (boo-lee-an), not logical.

Logical operators in R include the following, using placeholders X and Y to represent values/variables being compared:

Operator What it asks
X == Y Is X equal to Y?
X < Y Is X less than Y?
X > Y Is X greater than Y?
X <= Y Is X less than or equal to Y?
X >= Y Is X greater than or equal to Y?
X != Y Is X not equal to Y?
!(X < Y) Is X not less than Y?
!(X > Y) Is X not greater than Y?
X %in% Y_ARRAY Is the value X present in the array Y_ARRAY?
& Used to combine multiple logical statements with “and,” which means all statements must be TRUE to achieve TRUE.
| Used to combine multiple logical statements with “or,” which means at least one statement must be TRUE to achieve TRUE. This symbol is known as “pipe” and is located on the backslash key above the return/enter key on your keyboard.


Examples

Some examples below use the carnivores dataset. Learn more about this dataset with get_help("carnivores").

# Show the carnivores dataset
carnivores
## # A tibble: 9 × 4
##   name              genus        awake brainwt
##   <chr>             <fct>        <dbl>   <dbl>
## 1 Arctic fox        Vulpes        11.5  0.0445
## 2 Cheetah           Acinonyx      11.9 NA     
## 3 Dog               Canis         13.9  0.07  
## 4 Gray seal         Haliochoerus  17.8  0.325 
## 5 Jaguar            Panthera      13.6  0.157 
## 6 Lion              Panthera      10.5 NA     
## 7 Northern fur seal Callorhinus   15.3 NA     
## 8 Red fox           Vulpes        14.2  0.0504
## 9 Tiger             Panthera       8.2 NA


# Is 10 equal to 12?
10 == 12
## [1] FALSE


# Is 14 greater than 13.5?
14 > 13.5
## [1] TRUE


# Is the length of this array equal to 6? 
length( c(1, 1, 2, 3, 5, 8, 13)  ) == 6
## [1] FALSE


# Does the following string have less than or equal to 7 characters?
nchar("im a string being evaluated") <= 7
## [1] FALSE


# Is 10 greater than 5 _and_ 11 less than 10?
10 > 5 & 11 < 10
## [1] FALSE


# Is 10 greater than 5 _or_ 11 less than 10?
10 > 5 | 11 < 10
## [1] TRUE


# Is 55 not equal to 27?
55 != 27
## [1] TRUE


# Is the word "elephant" in the following array?
"elephant" %in% c("hippopotamus", "giraffe", "zebra", "elephant")
## [1] TRUE


# Is 'Panthera' in the genus column of carnivores?
"Panthera" %in% carnivores$genus
## [1] TRUE