Bird
Raised Fist0
R Programmingprogramming~20 mins

Row and column indexing in R Programming - Practice Problems & Coding Challenges

Choose your learning style10 modes available
Challenge - 5 Problems
🎖️
Row and Column Indexing Master
Get all challenges correct to earn this badge!
Test your skills under time pressure!
❓ Predict Output
intermediate
2:00remaining
Output of selecting rows and columns by index
What is the output of the following R code?
R Programming
df <- data.frame(A = 1:4, B = 5:8, C = 9:12)
result <- df[2:3, c(1,3)]
print(result)
A
  A  C
2 2 10
3 3 11
B
  A  C
1 1 9
4 4 12
C
  B  C
2 6 10
3 7 11
D
  A  B
2 2 6
3 3 7
Attempts:
2 left
💡 Hint
Remember that df[row_indices, column_indices] selects rows and columns by their positions.
❓ Predict Output
intermediate
2:00remaining
Output of logical indexing on rows and columns
What will be the output of this R code?
R Programming
df <- data.frame(X = c(10,20,30), Y = c(5,15,25), Z = c(1,2,3))
result <- df[df$X > 15, c(TRUE, FALSE, TRUE)]
print(result)
A
   X  Y  Z
2 20 15  2
3 30 25  3
B
   X  Z
2 20  2
3 30  3
C
   Y
2 15
3 25
D
   X  Z
1 10  1
2 20  2
3 30  3
Attempts:
2 left
💡 Hint
Logical vectors can be used to select columns; TRUE means select that column.
🔧 Debug
advanced
2:00remaining
Identify the error in row and column indexing
What error does this R code produce?
R Programming
df <- data.frame(A = 1:3, B = 4:6)
result <- df[1:4, 1]
print(result)
AError: subscript out of bounds
BNo error, prints 1 2 3 4
CError: object 'result' not found
DNo error, prints 1 2 3 NA
Attempts:
2 left
💡 Hint
Check how R handles indexing beyond the number of rows in a data frame.
❓ Predict Output
advanced
2:00remaining
Output of negative indexing on rows and columns
What is the output of this R code?
R Programming
df <- data.frame(M = 1:5, N = 6:10, O = 11:15)
result <- df[-(2:4), -2]
print(result)
A
  M  O
1 1 11
5 5 15
B
  N  O
1 6 11
5 10 15
C
  M  N
1 1 6
5 5 10
D
  M  O
2 2 12
3 3 13
4 4 14
Attempts:
2 left
💡 Hint
Negative indices exclude the specified rows or columns.
🧠 Conceptual
expert
2:00remaining
Number of items after complex indexing
Given the data frame below, how many elements are in the result of df[1:3, c(FALSE, TRUE, TRUE)]?
R Programming
df <- data.frame(A = 1:5, B = 6:10, C = 11:15)
A3
B9
C6
D15
Attempts:
2 left
💡 Hint
Count rows selected times columns selected.

Practice

(1/5)
1. In R, what does data[2, 3] select from a data frame named data?
easy
A. All rows and columns
B. The entire 2nd row
C. The entire 3rd column
D. The value in the 2nd row and 3rd column

Solution

  1. Step 1: Understand the indexing format

    In R, data[row, column] selects the element at the specified row and column.
  2. Step 2: Apply the given indices

    Here, row = 2 and column = 3, so it selects the value at 2nd row and 3rd column.
  3. Final Answer:

    The value in the 2nd row and 3rd column -> Option D
  4. Quick Check:

    data[2, 3] = value at row 2, column 3 [OK]
Hint: Use data[row, column] to pick exact cell [OK]
Common Mistakes:
  • Confusing row and column order
  • Thinking it selects entire row or column
  • Using parentheses instead of brackets
2. Which of the following is the correct syntax to select all rows and the 4th column from a data frame df in R?
easy
A. df[, 4]
B. df[4, ]
C. df[4]
D. df[4, 4]

Solution

  1. Step 1: Recall indexing rules for rows and columns

    Leaving the row index blank selects all rows; specifying a column index selects that column.
  2. Step 2: Match syntax to select all rows and 4th column

    df[, 4] means all rows, 4th column, which is correct.
  3. Final Answer:

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

    Blank row index means all rows [OK]
Hint: Blank row means all rows; specify column number [OK]
Common Mistakes:
  • Using df[4, ] selects 4th row, not column
  • Using df[4] selects 4th column but drops dimensions
  • Using df[4, 4] selects single cell, not all rows
3. Given the data frame df <- data.frame(A=1:3, B=4:6, C=7:9), what is the output of df[1:2, 2]?
medium
A. [1] 7 8
B. [1] 4 5
C. [1] 1 2
D. [1] 4 5 6

Solution

  1. Step 1: Understand the data frame structure

    df has columns A=1,2,3; B=4,5,6; C=7,8,9.
  2. Step 2: Select rows 1 and 2, column 2

    Rows 1 and 2 of column B (2nd column) are 4 and 5.
  3. Final Answer:

    [1] 4 5 -> Option B
  4. Quick Check:

    df[1:2, 2] = c(4, 5) [OK]
Hint: Rows 1:2, column 2 picks values 4 and 5 [OK]
Common Mistakes:
  • Confusing column numbers with letters
  • Selecting wrong rows or columns
  • Expecting output as a data frame instead of vector
4. What is wrong with this R code snippet to select the 3rd row and all columns from data frame df?
df[3]
medium
A. It selects the 3rd column, not the 3rd row
B. It causes a syntax error
C. It selects the 3rd row but drops columns
D. It returns all rows and columns

Solution

  1. Step 1: Understand single bracket indexing with one index

    Using one index like df[3] selects the 3rd column, not row.
  2. Step 2: Identify correct way to select 3rd row

    To select 3rd row and all columns, use df[3, ].
  3. Final Answer:

    It selects the 3rd column, not the 3rd row -> Option A
  4. Quick Check:

    df[3] = 3rd column, not row [OK]
Hint: Use df[row, ] to select rows, not df[row] [OK]
Common Mistakes:
  • Using single index to select rows
  • Expecting df[3] to select 3rd row
  • Confusing data frame and vector indexing
5. You have a data frame df with 5 rows and 4 columns named A, B, C, D. How do you select rows 2 to 4 and columns B and D using row and column indexing?
hard
A. df[2:4, c(2, 4)]
B. df[c(2,3,4), 2:4]
C. df[2:4, c("B", "D")]
D. df[2:4, c("2", "4")]

Solution

  1. Step 1: Identify rows and columns to select

    Rows 2 to 4 means indices 2, 3, 4; columns B and D are selected by names "B" and "D".
  2. Step 2: Use correct syntax for row and column indexing

    Use df[2:4, c("B", "D") ] to select rows 2-4 and columns named B and D.
  3. Final Answer:

    df[2:4, c("B", "D") ] -> Option C
  4. Quick Check:

    Row indices and column names combined correctly [OK]
Hint: Use row range and column names vector inside brackets [OK]
Common Mistakes:
  • Using numeric column indices instead of names
  • Passing column names as numbers in quotes
  • Selecting wrong rows or columns
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