filter

df <- read_csv('path')

df %>%
  filter(region == "South", year == 2020)

filter is better than subset as its part of tidyverse and is pipe operator friendly

mutate

mutate(dataframe, new_column = some_transformation)
#base syntax

mutate() adds new columns or modifies existing ones in your data frame.

tibble

a tibble is the modern and the more user friendly version of the data frame offered in the tidyverse package

df <- tibble(x = 1:5)
df <- data.frame(x = 1:5, y = letters[1:5])
tib <- as_tibble(df)