道歉,如果这是重复请告诉我,我很乐意删除。
我正在尝试为另一列的不同值选择四个最高值。
数据集:
A B COUNT
1 1 2 2
2 1 3 6
3 1 4 3
4 1 5 9
5 1 6 2
6 1 7 7
7 1 8 0
8 1 9 5
9 1 10 2
10 1 11 7
11 2 1 5
12 2 3 1
13 2 4 8
14 2 5 9
15 2 6 5
16 2 7 2
17 2 8 2
18 2 9 4
19 3 1 7
20 3 2 5
21 3 4 2
22 3 5 8
23 3 6 6
24 3 7 1
25 3 8 9
26 3 9 5
27 4 1 8
28 4 2 1
29 4 3 1
30 4 5 3
31 4 6 9
例如,我想在A = 1(9,7,7,6)时选择四个最高计数,然后在A = 2(9,8,5,5)时选择等等...
我还希望相应的B列值在每个计数旁边,所以当A = 1时,我想要的输出将是这样的:
B A Count
5 1 9
7 1 7
11 1 7
3 1 6
我已经在“选择最高价值”上找到了各种答案,但很难在其他专栏上找到一个示例条件。
非常感谢
答案 0 :(得分:2)
我们可以做到
df1 %>%
group_by(A) %>%
arrange(desc(COUNT)) %>%
filter(row_number() <5)
答案 1 :(得分:2)
library(dplyr)
data %>% group_by(A) %>%
arrange(A, desc(COUNT)) %>%
slice(1:4)