【发布时间】:2019-09-21 02:36:54
【问题描述】:
我想用 tidyverse 标记我的第一个排名靠前的值 - 如果可能的话。
假设以下数据
test = tibble(group=c(1,1,1,1,2,2,2,2), values = c(1,2,3,4,7,6,5,2))
我现在想标记第一个最高值,即第 1 组的值 3 和 4,第 2 组的值 7 和 6,产生:
# A tibble: 8 x 3
group values marker
<dbl> <dbl> <lgl>
1 1 1 FALSE
2 1 2 FALSE
3 1 3 TRUE
4 1 4 TRUE
5 2 7 TRUE
6 2 6 TRUE
7 2 5 FALSE
8 2 2 FALSE
我考虑过对它们进行排名,而不是进行比较以获得布尔值或使用 purrr,但我不知道如何。
【问题讨论】: