我在更新到dplyr开发版本0.8.99.9003后,在运行group_by和summarise()时收到了一个新消息(请参见帖子标题)。
这里有一个重新创建输出的示例:
library(tidyverse)
library(hablar)
df <- read_csv("year, week, rat_house_females, rat_house_males, mouse_wild_females, mouse_wild_males
2018,10,1,1,1,1
2018,10,1,1,1,1
2018,11,2,2,2,2
2018,11,2,2,2,2
2019,10,3,3,3,3
2019,10,3,3,3,3
2019,11,4,4,4,4
2019,11,4,4,4,4") %>%
convert(chr(year,week)) %>%
mutate(total_rodents = rowSums(select_if(., is.numeric))) %>%
convert(num(year,week)) %>%
group_by(year,week) %>% summarise(average = mean(total_rodents))
输出的tibble是正确的,但出现了以下信息:
这该如何解释?为什么它只报告按'year'重新分组而不是按年和周分组?另外,“覆盖”是什么意思?我为什么要这样做?
summarise()
对 'year' 进行重新分组输出 (可以用.groups
参数来覆盖)
我认为这个消息并没有指示问题,因为它在dplyr文档中一直出现: https://cran.r-project.org/web/packages/dplyr/vignettes/programming.html 我相信这是一个新消息,因为它只出现在最近的一些SO问题中,比如How to melt pairwise.wilcox.test output using dplyr?和R Aggregate over multiple columns(两者都没有涉及重新分组/覆盖消息)。
谢谢!
summarise
函数,且参数中包含groups = 'drop'
,那么分组的属性将不再存在,因此您无需使用ungroup
(至少在当前情况下,除非在tidyverse中更改了此行为)。 - akrun