The & operator performs element-wise logical AND between two logical vectors. It compares each element and returns TRUE only if both elements are TRUE.
Click to reveal answer
intermediate
Explain the difference between & and && in R.
& works element-wise on vectors, comparing each element. && only checks the first element of each vector and returns a single TRUE or FALSE.
Click to reveal answer
beginner
What does the ! operator do in R?
The ! operator negates a logical value or vector. It changes TRUE to FALSE and FALSE to TRUE for each element.
Click to reveal answer
beginner
How does the | operator work in R?
The | operator performs element-wise logical OR between two logical vectors. It returns TRUE if at least one element in the pair is TRUE.
Click to reveal answer
intermediate
What is the difference between | and || in R?
| works element-wise on vectors, comparing each element. || only checks the first element of each vector and returns a single TRUE or FALSE.
Click to reveal answer
Which operator in R performs element-wise logical AND?
A|
B&
C&&
D||
✗ Incorrect
The & operator performs element-wise logical AND on vectors.
What does the ! operator do in R?
ALogical NOT (negation)
BLogical AND
CLogical OR
DChecks first element only
✗ Incorrect
The ! operator negates logical values, turning TRUE to FALSE and vice versa.
Which operator checks only the first element of logical vectors in R?
A&&
B&
C|
D!
✗ Incorrect
The && operator checks only the first element of each vector.
What is the result of TRUE | FALSE in R?
AFALSE
BError
CNA
DTRUE
✗ Incorrect
The | operator returns TRUE if at least one operand is TRUE.
Which operator performs element-wise logical OR in R?
A||
B&
C|
D&&
✗ Incorrect
The | operator performs element-wise logical OR on vectors.
Describe the differences between & and && operators in R.
Think about how these operators behave with vectors.
You got /3 concepts.
Explain how the ! operator works and give an example.
Consider what happens when you apply it to a logical vector.
You got /4 concepts.
Practice
(1/5)
1. Which logical operator in R checks every element of a vector and returns a vector of results?
easy
A. ==
B. & and |
C. !
D. && and ||
Solution
Step 1: Understand vectorized logical operators
In R, & and | operate element-wise on vectors, returning a vector of TRUE/FALSE values for each element.
Step 2: Compare with single-element operators
&& and || only check the first element of the vectors and return a single TRUE/FALSE value.
Final Answer:
& and | -> Option B
Quick Check:
Element-wise operators = & and | [OK]
Hint: Use & and | for vectors, && and || for single values [OK]
Common Mistakes:
Confusing && and & as the same
Using || for vector comparisons
Thinking ! works on multiple elements like &
2. Which of the following is the correct syntax to negate a logical vector v in R?
easy
A. !v
B. not(v)
C. ~v
D. v != TRUE
Solution
Step 1: Identify the negation operator in R
The logical NOT operator in R is !, which negates each element of a logical vector.
Step 2: Check other options
not() is not a base R function, ~ is a formula operator, and v != TRUE works but is less direct and less clear.
v1 && v2 checks only first elements: TRUE && FALSE = FALSE Result: [FALSE]
Final Answer:
[1] FALSE FALSE TRUE
[1] FALSE -> Option D
Quick Check:
& compares all elements, && only first [OK]
Hint: & works element-wise; && checks first element only [OK]
Common Mistakes:
Thinking && works element-wise
Mixing up & and && results
Ignoring vector length in &&
4. Identify the error in this R code snippet:
v <- c(TRUE, FALSE, TRUE)
if (v & TRUE) {
print("Yes")
} else {
print("No")
}
medium
A. Using & inside if condition causes error due to vector length
B. Missing parentheses around v & TRUE
C. Should use | instead of &
D. No error, code runs fine
Solution
Step 1: Understand if condition requirements
The if statement expects a single TRUE or FALSE value, not a vector.
Step 2: Analyze v & TRUE
v & TRUE returns a logical vector of length 3, which causes an error in if because it cannot handle multiple values.
Final Answer:
Using & inside if condition causes error due to vector length -> Option A
Quick Check:
if needs single TRUE/FALSE, & returns vector [OK]
Hint: Use && in if conditions for single TRUE/FALSE [OK]
Common Mistakes:
Using & instead of && in if
Assuming if accepts vector
Ignoring error message about length
5. You have two logical vectors:
a <- c(TRUE, FALSE, TRUE, FALSE)
b <- c(FALSE, TRUE, TRUE, TRUE)
Write an expression using logical operators to find elements where either a is TRUE and b is FALSE, or a is FALSE and b is TRUE. What is the resulting vector?
hard
A. a | b resulting in [TRUE TRUE TRUE TRUE]
B. a & b resulting in [FALSE FALSE TRUE FALSE]
C. (a & !b) | (!a & b) resulting in [TRUE TRUE FALSE TRUE]
D. !(a | b) resulting in [FALSE FALSE FALSE FALSE]
Solution
Step 1: Understand the condition
We want TRUE where exactly one of a or b is TRUE, but not both. This is the XOR condition.
Step 2: Write expression and evaluate
(a & !b) | (!a & b) checks where a is TRUE and b is FALSE, or vice versa. Evaluate: a: TRUE FALSE TRUE FALSE b: FALSE TRUE TRUE TRUE a & !b: TRUE FALSE FALSE FALSE !a & b: FALSE TRUE FALSE TRUE OR: TRUE TRUE FALSE TRUE
Final Answer:
(a & !b) | (!a & b) resulting in [TRUE TRUE FALSE TRUE] -> Option C
Quick Check:
XOR = (a & !b) | (!a & b) [OK]
Hint: Use (a & !b) | (!a & b) for XOR logic [OK]
Common Mistakes:
Using & or | alone instead of XOR logic
Forgetting to negate one vector
Confusing XOR with OR
Recommended
Ready to prove it?
Pass the test and this pattern moves unknownstrongwhile earning +1 Grip toward your certificate.