繁体   English   中英

dplyr按多个变量分组按多个变量汇总

[英]dplyr group by multiple variables summarise by multiple variables

R的新手。使用dplyr,尝试对多个变量进行group_by,对多个变量,多个函数进行汇总。

这按预期工作

mtcars %>% 
+     group_by(cyl,hp) %>% 
+     summarise(min_mpg = min(mpg) , min_disp = min(disp), max_mpg = max(mpg) , max_disp = max(disp))

但是当我尝试用df复制时

vmp %>% 
    +     group_by(Priority,LOS) %>% 
    +     summarise(inv_total = sum(Inv_Total), sr_count = count(SR_Nmbr))

我收到此错误:

summarise_impl(.data,点)中的错误:评估错误:没有将适用于“组”的适用方法应用于“因子”类的对象。

我究竟做错了什么? 谢谢

library(dplyr)
vmp %>%
     mutate(Inv_Total=as.numeric(as.character(Inv_Total))) %>% 
     group_by(Priority,LOS) %>%
     summarise(sr_count=n(), 
               inv_total=sum(Inv_Total))

我们可以使用type.convert自动转换列类型

vmp %>%
    mutate_all(funs(type.convert(as.character(.), as.is = TRUE))) %>%
    group_by(Priority, LOS) %>%
    summarise(inv_total = sum(Inv_Total), sr_count =n())

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM