本文介绍了用dplyr:group_by拆分成多个数据帧子集?的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

是否有任何方法可以根据group_by组使用dplyr将一个数据帧拆分为数据帧的子集?

Is there any way to split one dataframe into subsets of dataframes with dplyr according to group_by groups?

mtcars %>% group_by(cyl, gear) %>% (codes?)

非常感谢!

推荐答案

嗯,并不是您真正想要的-但是您可以使用 tidyr ,几乎是同一件事。

Well, not that you'd really want to - but you can do it with tidyr, which is nearly the same thing.

library(dplyr)
library(tidyr)

data(iris)

iris %>%
    group_by(Species) %>%
    nest() %>%
    select(data) %>%
    unlist(recursive = F)

#> $data1
#> # A tibble: 50 x 4
#>    Sepal.Length Sepal.Width Petal.Length Petal.Width
#>           <dbl>       <dbl>        <dbl>       <dbl>
#> 1           5.1         3.5          1.4         0.2
#> 2           4.9         3.0          1.4         0.2
#> 
#> $data2
#> # A tibble: 50 x 4
#>    Sepal.Length Sepal.Width Petal.Length Petal.Width
#>           <dbl>       <dbl>        <dbl>       <dbl>
#> 1           7.0         3.2          4.7         1.4
#> 2           6.4         3.2          4.5         1.5
#> 
#> $data3
#> # A tibble: 50 x 4
#>    Sepal.Length Sepal.Width Petal.Length Petal.Width
#>           <dbl>       <dbl>        <dbl>       <dbl>
#> 1           6.3         3.3          6.0         2.5
#> 2           5.8         2.7          5.1         1.9

这篇关于用dplyr:group_by拆分成多个数据帧子集?的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持!

10-24 16:14