我有一个看起来像这样的数据框:
library(tidyverse)
df <- tibble::tribble(
~id, ~list,
1, "apple",
1, "pear",
1, "banana",
2, "apple",
2, "banana",
3, "apple"
)
我要创建df $ list列的唯一元素的列表
unique(df$list)
unique_list <- c("apple", "pear", "banana")
我想遍历unique_list
的每个值的主df并过滤整个df并创建3个不同的数据帧作为结果,命名为df_
“列表的每个元素”。 / p>
我可以为这样的单个元素做到这一点:
df %>% filter(list = 'apple') -> df_apple
# and:
df %>% filter(list = 'pear') -> df_pear
# and so on...
因此,最终我将获得3个经过过滤的数据帧,df_apple
,df_pear
,df_apple
。
如何使该过程更简洁?