分组后,无法获取 dplyr 的切片来选择每个分组的前 3 名

After grouping, cannot get dplyr's slice to select top 3 of each grouping

提问人:JTD 提问时间:11/24/2022 最后编辑:andrewJamesJTD 更新时间:11/24/2022 访问量:40

问:

我试图根据l5_ppg_max只保留每个分组的前 3 条记录。此代码正确设置了表格,但是当我添加切片代码时,它没有选择每个组的前 3 条记录。

#library(reticulate)
library(tidyverse)
library(plotly)
library(janitor)
library(readxl)
library(reprex)

player_projection <- read_csv("DFF_NHL_cheatsheet.csv", col_names = TRUE)

team__reg_line <- player_projection %>%
    clean_names() %>%
    mutate_if(is.numeric, ~replace_na(., 0)) %>%
    filter(!position == "G") %>%
    filter(!reg_line  == 0) %>%
    select(team, reg_line, l5_ppg_max, salary) %>%
    arrange(team, reg_line, desc(l5_ppg_max)) %>%
    group_by(team, reg_line, salary, l5_ppg_max) 

当我添加这一行时:

 slice_head(n = 3)

它仍返回所有记录。

还尝试了 top_n(3),但读到它已被弃用,因此保留了 dplyr slice 函数。在 excel 中手动完成非常容易,但需要在 R 中执行 ggplot 输出。

R DPLYR 切片

评论

1赞 JTD 11/24/2022
我发现了问题,我需要使用 dplyr::slice 来添加代码。Plotly 库与 tidyverse(dplyr) 一起加载,它们都具有切片函数。订单必须首先选择 plotly 函数,而不是 dplyr 切片函数。现在运行良好,但花了一天时间才弄清楚......
0赞 andrewJames 11/24/2022
您可以回答自己的问题,而不仅仅是发表评论 - 特别是如果您认为完整的答案会帮助未来的访问者遇到类似问题。

答: 暂无答案