Split()函数,用于拆分为组,而不是单个元素-在R中

Split()函数,用于拆分为组,而不是单个元素-在R中,r,split,R,Split,是否有一种方法可以将数据帧拆分为元素组而不是单个元素。例如,在下面的代码中 rs_scq_user_ <- split(regular_season, list(regular_season$season, regular_season$category, regular_season$question)) 相聚 summer, fall 呆在一起。我该怎么做呢?一个选项是为此创建一个逻辑列。下面,带有TRUE值的“标志”表示“冬季”、“春季”,而FAL

是否有一种方法可以将数据帧拆分为元素组而不是单个元素。例如,在下面的代码中

rs_scq_user_ <- split(regular_season, list(regular_season$season,
                regular_season$category, regular_season$question))
相聚

summer, fall

呆在一起。我该怎么做呢?

一个选项是为此创建一个逻辑列。下面,带有
TRUE
值的“标志”表示“冬季”、“春季”,而
FALSE
将自动成为res,即“夏季”、“秋季”(假设数据中只有4个季节)


或者另一个选项是从
dplyr

library(dplyr)
regular_season %>%
    group_split(category, question, flag = season %in% c('winter', 'spring')) 

或者如果我们更喜欢将一个串联的“季节”作为新的“季节”

regular_season %>%
    group_split(category, question, 
       season_concat = case_when(season %in% c('winter', 'spring') 
                 ~ 'winter_spring', TRUE ~ 'summer_fall'))
     

谢谢@akrun这很有帮助(其他答案也是如此!)!我看到其他一些用户在他们的传记中有链接到网站,人们可以在那里给他们买咖啡什么的。你应该让我知道如果你有任何类似的事情,我很乐意回报你的帮助完全好,人们喜欢你的答案,所以我希望你得到很多的满意!
lst1 <- split(regular_season, regular_season[c('category', 'question', 
         'flag')], drop = TRUE)
library(dplyr)
regular_season %>%
    group_split(category, question, flag = season %in% c('winter', 'spring')) 
regular_season %>%
    group_split(category, question, 
       season_concat = case_when(season %in% c('winter', 'spring') 
                 ~ 'winter_spring', TRUE ~ 'summer_fall'))