Bird
Raised Fist0
R Programmingprogramming~5 mins

Special operators (%in%, %*%) in R Programming - Cheat Sheet & Quick Revision

Choose your learning style10 modes available
Recall & Review
beginner
What does the %in% operator do in R?
The %in% operator checks if elements of one vector are present in another vector. It returns a logical vector of TRUE or FALSE values.
Click to reveal answer
beginner
How does the %*% operator work in R?
The %*% operator performs matrix multiplication between two matrices or vectors, following the rules of linear algebra.
Click to reveal answer
beginner
Example: What is the result of c(1, 2, 3) %in% c(2, 3, 4)?
The result is a logical vector: FALSE TRUE TRUE. It shows which elements of the first vector are found in the second.
Click to reveal answer
intermediate
Example: What is the output of matrix(c(1,2,3,4), nrow=2) %*% matrix(c(5,6,7,8), nrow=2)?
The output is a 2x2 matrix: [,1] [,2] [1,] 19 22 [2,] 43 50 This is the result of multiplying the two matrices using matrix multiplication rules.
Click to reveal answer
intermediate
Can %in% be used with data frames or lists?
Yes, %in% can be used to check if elements exist in vectors extracted from data frames or lists, but it works element-wise on vectors, not directly on data frames.
Click to reveal answer
What does the expression '3 %in% c(1, 2, 3, 4)' return in R?
ATRUE
BFALSE
C3
DError
Which operator is used for matrix multiplication in R?
A*
B%*%
C%in%
D%%
What is the output type of 'c(1,2,3) %in% c(2,3,4)'?
ANumeric vector
BMatrix
CLogical vector
DCharacter vector
If A is a 2x3 matrix and B is a 3x2 matrix, what does A %*% B produce?
AError
BA 3x3 matrix
CA 2x3 matrix
DA 2x2 matrix
Can %in% be used to check if a value is in a list directly?
ANo, it only works on vectors
BYes, it works directly on lists
CYes, but only for numeric lists
DNo, it only works on matrices
Explain how the %in% operator works and give a simple example.
Think about checking if items are inside a shopping list.
You got /3 concepts.
    Describe the purpose of the %*% operator and what kind of data it works with.
    Imagine multiplying two tables of numbers to get a new table.
    You got /3 concepts.

      Practice

      (1/5)
      1. What does the %in% operator do in R?
      easy
      A. Calculates the sum of two vectors
      B. Performs element-wise multiplication of two vectors
      C. Performs matrix multiplication
      D. Checks if elements of one vector are present in another vector

      Solution

      1. Step 1: Understand the purpose of %in%

        The %in% operator is used to check membership, meaning it tests if elements of one vector exist in another.
      2. Step 2: Compare with other operations

        Other options describe arithmetic or matrix operations, which are not the function of %in%.
      3. Final Answer:

        Checks if elements of one vector are present in another vector -> Option D
      4. Quick Check:

        %in% = membership check [OK]
      Hint: Remember: %in% means 'is in' for membership [OK]
      Common Mistakes:
      • Confusing %in% with arithmetic operators
      • Thinking %in% does matrix multiplication
      • Assuming %in% returns numeric results
      2. Which of the following is the correct syntax for matrix multiplication in R?
      easy
      A. A * B
      B. A %*% B
      C. A %in% B
      D. A + B

      Solution

      1. Step 1: Identify matrix multiplication operator

        In R, matrix multiplication is done using %*%, so A %*% B is correct syntax.
      2. Step 2: Differentiate from other operators

        * is element-wise multiplication, %in% is membership, and + is addition.
      3. Final Answer:

        A %*% B -> Option B
      4. Quick Check:

        Matrix multiply = %*% [OK]
      Hint: Use %*% for matrix multiply, * for element-wise [OK]
      Common Mistakes:
      • Using * instead of %*% for matrix multiplication
      • Confusing %in% with multiplication
      • Using + for multiplication
      3. What is the output of the following R code?
      x <- c(3, 1, 5)
      y <- c(3, 4, 5, 6)
      x %in% y
      medium
      A. [TRUE, FALSE, TRUE]
      B. [FALSE, TRUE, FALSE]
      C. [TRUE, TRUE, TRUE]
      D. [FALSE, FALSE, FALSE]

      Solution

      1. Step 1: Check each element of x in y

        3 is in y, so TRUE; 1 is not in y, so FALSE; 5 is in y, TRUE.
      2. Step 2: Form the logical vector

        The result is [TRUE, FALSE, TRUE].
      3. Final Answer:

        [TRUE, FALSE, TRUE] -> Option A
      4. Quick Check:

        %in% returns logical vector [OK]
      Hint: Check each element presence one by one [OK]
      Common Mistakes:
      • Mixing order of TRUE/FALSE in output
      • Assuming %in% returns indices
      • Confusing %in% with element-wise comparison
      4. Identify the error in the following R code:
      A <- matrix(c(1,2,3,4), nrow=2)
      B <- matrix(c(5,6,7,8), nrow=2)
      C <- A *%* B
      medium
      A. Matrices A and B have incompatible dimensions
      B. Missing library for matrix multiplication
      C. Incorrect operator *%* used for matrix multiplication
      D. Matrix A is not defined properly

      Solution

      1. Step 1: Check operator syntax

        The operator *%* is invalid in R; correct operator is %*%.
      2. Step 2: Verify matrix dimensions and definitions

        Both matrices are 2x2, so dimensions are compatible and matrices are defined correctly.
      3. Final Answer:

        Incorrect operator *%* used for matrix multiplication -> Option C
      4. Quick Check:

        Matrix multiply operator is %*% [OK]
      Hint: Use %*% exactly for matrix multiplication [OK]
      Common Mistakes:
      • Typing operators in wrong order
      • Assuming *%* is valid
      • Confusing element-wise * with matrix multiply
      5. Given two matrices:
      M1 <- matrix(c(1, 0, 2, 3), nrow=2)
      M2 <- matrix(c(4, 1, 0, 2), nrow=2)

      Which R expression correctly computes the matrix product and then checks if the number 5 is in the resulting matrix?
      hard
      A. 5 %in% (M1 %*% M2)
      B. M1 *%*% M2 %in% 5
      C. M1 %in% 5 %*% M2
      D. M1 %*% M2 == 5

      Solution

      1. Step 1: Perform matrix multiplication correctly

        Use %*% to multiply M1 and M2: M1 %*% M2.
      2. Step 2: Check membership of 5 in the product matrix

        Use %in% to check if 5 is present in the resulting matrix: 5 %in% (M1 %*% M2).
      3. Final Answer:

        5 %in% (M1 %*% M2) -> Option A
      4. Quick Check:

        Matrix multiply then membership check = 5 %in% (M1 %*% M2) [OK]
      Hint: Chain %*% then %in% with parentheses [OK]
      Common Mistakes:
      • Using wrong operator order
      • Typing *%*% instead of %*%
      • Using == instead of %in% for membership
      Recommended

      Ready to prove it?

      Pass the test and this pattern moves unknown strong while earning +1 Grip toward your certificate.

      10 questions~5 mineasy hard