R:如何在分组数据上同时使用summary和do函数
在tidyverse中,Summary可用于具有单值函数的分组数据。比如说R:如何在分组数据上同时使用summary和do函数,r,dplyr,tidyverse,R,Dplyr,Tidyverse,在tidyverse中,Summary可用于具有单值函数的分组数据。比如说 mtcars %>% group_by(cyl) %>% summarise(max(cos(mpg))) 如果函数是向量值,那么,如果我没有错,建议使用do。例如,do命令适用于phych包中的向量值函数“descripe”: library(psych) mtcars %>% group_by(cyl) %>% do(describe(.$mpg)) 如何将单值函数和向量值函数同时应用
mtcars %>% group_by(cyl) %>% summarise(max(cos(mpg)))
如果函数是向量值,那么,如果我没有错,建议使用do。例如,do命令适用于phych包中的向量值函数“descripe”:
library(psych)
mtcars %>% group_by(cyl) %>% do(describe(.$mpg))
如何将单值函数和向量值函数同时应用于分组数据?例如,如何将max(cos())和descripe()应用于mpg列,并将输出作为一个数据帧?我们可以将
descripe
的输出放在列表中的摘要中,然后取消测试
library(tidyverse)
mtcars %>%
group_by(cyl) %>%
summarise(Cosmpg = max(cos(mpg)), list(describe(mpg))) %>%
unnest
# A tibble: 3 x 15
# cyl Cosmpg vars n mean sd median trimmed mad min max range skew kurtosis se
# <dbl> <dbl> <dbl> <dbl> <dbl> <dbl> <dbl> <dbl> <dbl> <dbl> <dbl> <dbl> <dbl> <dbl> <dbl>
#1 4.00 0.743 1.00 11.0 26.7 4.51 26.0 26.4 6.52 21.4 33.9 12.5 0.259 -1.65 1.36
#2 6.00 0.939 1.00 7.00 19.7 1.45 19.7 19.7 1.93 17.8 21.4 3.60 -0.158 -1.91 0.549
#3 8.00 0.989 1.00 14.0 15.1 2.56 15.2 15.2 1.56 10.4 19.2 8.80 -0.363 -0.566 0.684
库(tidyverse)
mtcars%>%
组别组别组别组别组别组别组别组别组别组别组别组别组别组别组别组别组别组别组别组别组别组别组别组别组别组别组别组别组别组别组别
总结(Cosmpg=max(cos(mpg)),列表(描述(mpg)))%>%
不耐烦
#一个tibble:3x15
#cyl Cosmpg变量n平均sd中值修剪mad最小最大范围偏斜峰度se
#
#1 4.00 0.743 1.00 11.0 26.7 4.51 26.0 26.4 6.52 21.4 33.9 12.5 0.259 -1.65 1.36
#2 6.00 0.939 1.00 7.00 19.7 1.45 19.7 19.7 1.93 17.8 21.4 3.60 -0.158 -1.91 0.549
#3 8.00 0.989 1.00 14.0 15.1 2.56 15.2 15.2 1.56 10.4 19.2 8.80 -0.363 -0.566 0.684
一如既往,您的答案非常优雅@akrun!不需要使用do,只需在摘要中列出,然后再取消测试。