用于循环以在R中创建新对象



我正在尝试为列"中的每个项创建新对象;类别">

rs_ <- regular_season %>% filter(user_id > 0)
unique_categories <- unique(regular_season$category)
for (i in unique_categories)
rs_[i] <- regular_season %>% filter(category %in% unique_categories)

我尝试创建一个模板对象";rs_";我会迭代添加到(它本质上是一个带有null条件的数据集,这样它就不会简单地重命名数据集(。有人能告诉我如何更好地做到这一点吗?

我已经研究了一些其他问题,这些问题建议使用列表等其他东西,但(当然,在不太了解R的情况下(对于列中的项目数量,for循环似乎并不可怕,而且我在弄清楚如何使用列表方面遇到了一些困难。

我们可以使用assign

for(i in unique_categories) {
assign(i, regular_season %>%
filter(category %in% i)
}

或者另一个选项是splitlist2env

list2env(split(regular_season, regular_season$category), 
.GlobalEnv)

最新更新