I have a data frame with several columns, one of which is a factor called \"site\". How can I split the data frame into blocks of rows each with a unique value of \"site\",
I seem to recall that plain old split()
has a method for data.frames, so that split(data,data$site)
would produce a list of blocks. You could then operate on this list using sapply
/lapply
/for
.
split()
is also nice because of unsplit()
, which will create a vector the same length as the original data and in the correct order.