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)