Remember R starts counting at 1, so vector[1] is the first item.
If you use an index outside the vector length, R returns NA (missing value).
You can also use negative numbers to exclude items, like v[-1] to skip the first item.
Summary
Vector indexing in R starts at 1, not 0.
You use square brackets [] to pick or change items by position.
You can select one or many items by giving one or more index numbers.
Practice
(1/5)
1. In R, what is the position of the first element in a vector v when using indexing like v[1]?
easy
A. The first element (position 1)
B. The zeroth element (position 0)
C. The last element
D. An error because indexing starts at 0
Solution
Step 1: Understand R vector indexing
R vectors start indexing at 1, not 0 like some other languages.
Step 2: Apply indexing to vector v
Using v[1] selects the first element of the vector.
Final Answer:
The first element (position 1) -> Option A
Quick Check:
R indexing starts at 1 = first element [OK]
Hint: Remember: R indexing always starts at 1, never 0 [OK]
Common Mistakes:
Thinking indexing starts at 0 like in Python or C
Confusing position 1 with last element
Assuming indexing causes an error if 0 is used
2. Which of the following is the correct syntax to get the third element from a vector vec in R?
easy
A. vec[3]
B. vec<3>
C. vec{3}
D. vec(3)
Solution
Step 1: Recall R vector indexing syntax
In R, square brackets [] are used to access elements by position.
Step 2: Identify correct syntax for third element
Using vec[3] correctly accesses the third element.
Final Answer:
vec[3] -> Option A
Quick Check:
Use square brackets for indexing in R [OK]
Hint: Use square brackets [] to index vectors in R [OK]
Common Mistakes:
Using parentheses () instead of square brackets
Using curly braces {} which are invalid for indexing
Using angle brackets <> which are not valid syntax
3. What will be the output of the following R code?
nums <- c(10, 20, 30, 40, 50)
nums[2:4]
medium
A. [10 20 30]
B. [20 30 40]
C. [20 30 40 50]
D. [30 40 50]
Solution
Step 1: Understand the vector and indexing range
The vector nums has elements 10, 20, 30, 40, 50 at positions 1 to 5.
Step 2: Extract elements from position 2 to 4
Using nums[2:4] selects elements at positions 2, 3, and 4 which are 20, 30, and 40.
Final Answer:
[20 30 40] -> Option B
Quick Check:
Positions 2 to 4 = 20, 30, 40 [OK]
Hint: Use colon : to select a range of positions [OK]
Common Mistakes:
Including position 5 by mistake
Starting range at 1 instead of 2
Confusing vector values with positions
4. Consider the R code below. What is the error and how to fix it?
vals <- c(5, 10, 15, 20)
print(vals[0])
medium
A. Error: Use parentheses instead of brackets
B. No error; prints 5
C. Error: Index 0 is invalid; use index starting at 1
D. Error: Vector must be numeric
Solution
Step 1: Identify the indexing error
In R, vector indexing starts at 1; index 0 is invalid and returns an empty vector.
Step 2: Correct the index to start at 1
Replace vals[0] with vals[1] to access the first element.
Final Answer:
Error: Index 0 is invalid; use index starting at 1 -> Option C
Quick Check:
R indexing starts at 1, not 0 [OK]
Hint: Never use 0 as index in R vectors [OK]
Common Mistakes:
Assuming 0 is a valid index like in other languages
Trying to use parentheses for indexing
Thinking vector type causes the error
5. You have a vector data <- c(3, 6, 9, 12, 15). How do you create a new vector containing only the 1st, 3rd, and 5th elements using vector indexing in R?
hard
A. data[1, 3, 5]
B. data[1:3:5]
C. data[c(0, 2, 4)]
D. data[c(1, 3, 5)]
Solution
Step 1: Understand how to select multiple elements
In R, use c() inside square brackets to select multiple positions.
Step 2: Apply correct indexing for positions 1, 3, and 5
Using data[c(1, 3, 5)] selects elements at these positions: 3, 9, and 15.
Final Answer:
data[c(1, 3, 5)] -> Option D
Quick Check:
Use c() inside [] to pick multiple positions [OK]
Hint: Use c() inside [] to select multiple indices [OK]
Common Mistakes:
Using colon with multiple steps incorrectly
Using commas inside [] without c()
Using zero-based indices like 0, 2, 4
Recommended
Ready to prove it?
Pass the test and this pattern moves unknownstrongwhile earning +1 Grip toward your certificate.