遍历多变量子集

时间:2018-06-26 13:30:03

标签: r loops subset

我有一个很大的数据框,希望按年份和ID进行子集划分,因此我可以绘制各个年份的每个单独的ID。 这是我的最新尝试,但只输出一年和一个ID:

yearloop<-unique(set$year)                 
for(m in 1:length(yearloop)){
  set_1<-subset(set,year==yearloop[m])
  IDloop<-unique(unlist(set_1$ID))
  for(c in 1:length(IDloop)){
    set_2<-subset(set_1,ID==IDloop[c])

有什么想法吗?

1 个答案:

答案 0 :(得分:0)

split(mtcars, list(mtcars$vs, mtcars$am))

或随身携带数据:split(set, list(set$year,set$id))

如果您需要为数据框的不同子集作图,甚至可能不需要拆分数据,也可以使用ggplot和分面图,如下所示:

library(ggplot2)
ggplot(mtcars, aes(mpg, wt)) + geom_point() + facet_grid (~ vs + am)