相关疑难解决方法(0)

dplyr - 分组并选择TOP x%

使用包dplyr和函数 sample_frac可以从每个组中采样百分比.我需要的是首先对每个组中的元素进行排序,然后从每个组中选择前x%?

有一个功能 top_n,但在这里我只能确定行数,我需要一个相对值.

例如,以下数据按齿轮分组并按其排序 wt每组内的:

library(dplyr)
mtcars %>%
  select(gear, wt) %>%
  group_by(gear) %>%
  arrange(gear, wt)

    gear    wt
1   3   2.465
2   3   3.215
3   3   3.435
4   3   3.440
5   3   3.460
6   3   3.520
7   3   3.570
8   3   3.730
9   3   3.780
10  3   3.840
11  3   3.845
12  3   4.070
13  3   5.250
14  3   5.345
15  3   5.424
16  4   1.615
17  4   1.835
18  4   1.935
19  4   2.200
20  4 …
Run Code Online (Sandbox Code Playgroud)

r dplyr

10
推荐指数
3
解决办法
9176
查看次数

标签 统计

dplyr ×1

r ×1