2. Which of the following is the correct syntax to select columns name and age from a data frame df using dplyr?
easy
A. select(name, age)
B. df.select(name, age)
C. select(name, age, df)
D. df %>% select(name, age)
Solution
Step 1: Recall dplyr pipe syntax
In dplyr, the pipe operator %>% passes df as the first argument to select().
Step 2: Check each option
A: select(name, age) misses the data frame df. B: df %>% select(name, age) uses pipe correctly. C: select(name, age, df) has wrong argument order. D: df.select(name, age) is not valid R syntax.
Final Answer:
df %>% select(name, age) -> Option D
Quick Check:
Use pipe %>% then select columns [OK]
Hint: Use pipe %>% before select() for clean code [OK]
Common Mistakes:
Wrong argument order in select()
Using dot notation like df.select()
Forgetting to load dplyr package
3. Given the data frame df with columns id, name, age, and score, what will be the output of this code?
library(dplyr)
df %>% select(name, score)
medium
A. A data frame with only columns name and score.
B. A data frame with all columns except name and score.
C. An error because select() needs row filtering.
D. A data frame with columns id and age only.
Solution
Step 1: Understand select() behavior
The select() function picks only the columns named inside it, here name and score.
Step 2: Confirm output columns
The output will be a data frame with just these two columns, dropping id and age.
Final Answer:
A data frame with only columns name and score. -> Option A
Quick Check:
select(name, score) = only those columns [OK]
Hint: select() keeps only listed columns, drops others [OK]
Common Mistakes:
Thinking select() drops listed columns
Expecting row filtering from select()
Confusing select() with filter()
4. Identify the error in this code snippet:
library(dplyr)
df %>% select('name', 'age')
medium
A. Missing pipe operator before select().
B. Using quotes around column names causes an error.
C. select() cannot be used with dplyr.
D. The data frame df is not defined.
Solution
Step 1: Check column name syntax in select()
In dplyr's select(), column names should be unquoted bare names, not strings.
Step 2: Understand consequences of quotes
Using quotes treats them as strings, causing select() to fail to find columns and throw an error.
Final Answer:
Using quotes around column names causes an error. -> Option B
Quick Check:
Column names unquoted in select() [OK]
Hint: Do not put quotes around column names in select() [OK]
Common Mistakes:
Quoting column names inside select()
Forgetting to load dplyr
Assuming select() filters rows
5. You have a data frame df with columns name, age, score, and grade. You want to select only name and score but rename score to points in the output. Which code does this correctly?
hard
A. df %>% select(name, points = score)
B. df %>% select(name, score = points)
C. df %>% rename(points = score) %>% select(name, score)
D. df %>% select(name, score) %>% mutate(points = score)
Solution
Step 1: Understand renaming in select()
dplyr allows renaming columns inside select() by using new_name = old_name syntax.
Step 2: Check each option
A: df %>% rename(points = score) %>% select(name, score) renames score to points, then selects score which no longer exists, error. B: df %>% select(name, score = points) reverses names, no points column exists, error. C: df %>% select(name, points = score) correctly selects name and renames score to points. D: df %>% select(name, score) %>% mutate(points = score) adds points but keeps score.
Final Answer:
df %>% select(name, points = score) -> Option A
Quick Check:
Rename inside select() with new = old [OK]
Hint: Rename columns inside select() using new_name = old_name [OK]
Common Mistakes:
Swapping new and old names
Using rename() without dropping old column
Using mutate() instead of select() for renaming
Recommended
Ready to prove it?
Pass the test and this pattern moves unknownstrongwhile earning +1 Grip toward your certificate.