У меня есть набор данных, показанный ниже:
data <- tribble(
~shop_name, ~products, ~category_name,
"A", 1, "Game",
"A", 1, "Book",
"A", 2, "Electronic",
"A", 3, "Home",
"B", 5, "Game",
"B", 5, "Electronic",
"B", 8, "Home",
"C", 1, "Book",
"C", 7, "Game",
"C", 9, "Game",
)
Я хотел бы увидеть топ-1 категории на основе продуктов, и закодировал это:
data %>%
group_by(shop_name) %>%
top_n(1, products) %>%
mutate(top_category = toString(category_name))
Но потому что продуктыиногда имеют одинаковые значения для каждого shop_name, в "top_category" есть несколько названий категорий. Как получить первый ряд, который появляется первым в наборе данных?