R
Beginner
1 min read
Core dplyr Verbs: filter, select, mutate, arrange
Example
library(dplyr)
# Sample data
employees <- data.frame(
id = 1:8,
name = c("Alice","Bob","Carol","Dave","Eve","Frank","Gina","Hank"),
dept = c("HR","IT","IT","Finance","HR","IT","Finance","HR"),
salary = c(55000,72000,48000,95000,61000,88000,102000,58000),
years = c(3, 7, 2, 12, 5, 9, 15, 4),
active = c(TRUE,TRUE,FALSE,TRUE,TRUE,TRUE,TRUE,FALSE)
)
# filter — keep rows matching conditions
filter(employees, dept == "IT")
filter(employees, salary > 60000, active == TRUE)
filter(employees, dept == "HR" | dept == "Finance")
filter(employees, between(salary, 50000, 80000))
# select — choose columns
select(employees, name, dept, salary)
select(employees, -id, -active) # drop columns
select(employees, starts_with("s")) # salary, (none others here)
select(employees, emp_name = name, department = dept, salary)
# mutate — add / modify columns
employees <- mutate(employees,
bonus = salary * 0.10,
total_comp = salary + bonus,
seniority = case_when(
years < 3 ~ "junior",
years < 8 ~ "mid",
TRUE ~ "senior"
)
)
# arrange — sort rows
arrange(employees, salary) # ascending
arrange(employees, desc(salary)) # descending
arrange(employees, dept, desc(salary)) # multi-column sort
# Pipe all together
employees |>
filter(active == TRUE) |>
select(name, dept, total_comp, seniority) |>
arrange(dept, desc(total_comp))