使用dplyr:group_by将数据帧拆分为多个子集?

使用dplyr:group_by将数据帧拆分为多个子集?,r,dplyr,R,Dplyr,是否有任何方法可以使用dplyr按组将一个数据帧拆分为数据帧的子集 mtcars %>% group_by(cyl, gear) %>% (codes?) 非常感谢 嗯,这不是你真正想要的,但是你可以用tidyr来做,这几乎是一样的 library(dplyr) library(tidyr) data(iris) iris %>% group_by(Species) %>% nest() %>% select(data) %>%

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

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

非常感谢

嗯,这不是你真正想要的,但是你可以用
tidyr
来做,这几乎是一样的

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)
图书馆(tidyr)
数据(iris)
虹膜%>%
组别(种类)%>%
嵌套()%>%
选择(数据)%>%
未列出(递归=F)
#>$data1
#>#A tibble:50 x 4
#>萼片。长萼片。宽花瓣。长花瓣。宽
#>                                 
#> 1           5.1         3.5          1.4         0.2
#> 2           4.9         3.0          1.4         0.2
#> 
#>$data2
#>#A tibble:50 x 4
#>萼片。长萼片。宽花瓣。长花瓣。宽
#>                                 
#> 1           7.0         3.2          4.7         1.4
#> 2           6.4         3.2          4.5         1.5
#> 
#>$data3
#>#A tibble:50 x 4
#>萼片。长萼片。宽花瓣。长花瓣。宽
#>                                 
#> 1           6.3         3.3          6.0         2.5
#> 2           5.8         2.7          5.1         1.9

好吧,这并不是你真正想要的,但是你可以用
tidyr
来做,这几乎是一样的

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)
图书馆(tidyr)
数据(iris)
虹膜%>%
组别(种类)%>%
嵌套()%>%
选择(数据)%>%
未列出(递归=F)
#>$data1
#>#A tibble:50 x 4
#>萼片。长萼片。宽花瓣。长花瓣。宽
#>                                 
#> 1           5.1         3.5          1.4         0.2
#> 2           4.9         3.0          1.4         0.2
#> 
#>$data2
#>#A tibble:50 x 4
#>萼片。长萼片。宽花瓣。长花瓣。宽
#>                                 
#> 1           7.0         3.2          4.7         1.4
#> 2           6.4         3.2          4.5         1.5
#> 
#>$data3
#>#A tibble:50 x 4
#>萼片。长萼片。宽花瓣。长花瓣。宽
#>                                 
#> 1           6.3         3.3          6.0         2.5
#> 2           5.8         2.7          5.1         1.9

您希望得到什么结果?我希望得到一个数据帧列表
group by
的要点是它不会分割,但允许您像进行操作一样进行操作。如果您确实希望拆分它,请使用
split
。您希望得到什么结果?我希望得到一个数据帧列表
groupby
的要点是它不会拆分,但允许您像以前那样进行操作。如果确实要拆分,请使用
split