Load required libraries

library(tidyverse) library(scales)

Create bike_orderline_tbl dataset

bike_orderline_tbl <- tibble( category_1 = c(“Mountain”, “Mountain”, “Mountain”, “Mountain”, “Mountain”, “Mountain”, “Mountain”, “Road”, “Road”, “Road”), category_2 = c(“Cross Country Race”, “Cross Country Race”, “Fat Bike”, “Over Mountain”, “Sport”, “Trail”, “Trail”, “Cyclocross”, “Elite Road”, “Elite Road”), frame_material = c(“Aluminum”, “Carbon”, “Aluminum”, “Carbon”, “Aluminum”, “Aluminum”, “Carbon”, “Carbon”, “Aluminum”, “Carbon”), sales = c(3318560, 15906070, 1052620, 7571270, 1932755, 4537610, 4835850, 2108120, 5637795, 9696870) )

Group and summarize the data

result <- bike_orderline_tbl %>% group_by(category_1, category_2, frame_material) %>% summarize(Sales = sum(sales), .groups = “drop”) %>% arrange(desc(Sales)) %>% rename( Prime category = category_1, Secondary category = category_2, Frame Material = frame_material ) %>% mutate(Sales = dollar(Sales))

Display the result

print(result)