英文:
how can I get the largest number of occurrences of unique values by group in R
问题
以下是翻译好的内容:
例如,我有一个已经使用pivot_longer()函数转换过的数据框。它包含选择(choice)、试验编号(trial)和一个ID。
如何在R中按组获取唯一值的最大出现次数?
理想的结果应该如下:
ID max_choice max_time
1 A 3
2 B 3
3 A 4
谢谢你的帮助。
英文:
For example, I have a dataframe that has been pivot_longer(). It contains the choice, the trial number and an ID.
ID trial choice
1 1 A
1 2 A
1 3 B
1 4 C
1 5 A
2 1 A
2 2 B
2 3 B
2 4 B
2 5 C
3 1 A
3 2 A
3 3 A
3 4 A
3 5 C
...
How can I get the largest number of occurrences of unique values by group in R?
The ideal result should be like
ID max_choice max_time
1 A 3
2 B 3
3 A 4
Thank you for the help.
答案1
得分: 0
使用dplyr
的count
和slice_max
,您可以执行以下操作:
library(dplyr, warn = FALSE)
dat %>%
count(ID, choice) %>%
slice_max(n, by = ID)
#> ID choice n
#> 1 1 A 3
#> 2 2 B 3
#> 3 3 A 4
请注意,这只是代码的中文翻译部分,不包括问题的回答。
英文:
Using dplyr
's count
and slice_max
you could do:
library(dplyr, warn = FALSE)
dat |>
count(ID, choice) |>
slice_max(n, by = ID)
#> ID choice n
#> 1 1 A 3
#> 2 2 B 3
#> 3 3 A 4
通过集体智慧和协作来改善编程学习和解决问题的方式。致力于成为全球开发者共同参与的知识库,让每个人都能够通过互相帮助和分享经验来进步。
评论