by {base} | R Documentation |
Function by
is an object-oriented wrapper for
tapply
applied to data frames.
by(data, INDICES, FUN, ...)
data |
an R object, normally a data frame, possibly a matrix. |
INDICES |
a factor or a list of factors, each of length nrow(x) . |
FUN |
a function to be applied to data frame subsets of x . |
... |
further arguments to FUN . |
A data frame is split by row into data frames
subsetted by the values of one or more factors, and function
FUN
is applied to each subset in term.
Object data
will be coerced to a data frame by default.
A list of class "by"
, giving the results for each subset.
require(stats) data(warpbreaks) attach(warpbreaks) by(warpbreaks[, 1:2], tension, summary) by(warpbreaks[, 1], list(wool=wool, tension=tension), summary) by(warpbreaks, tension, function(x) lm(breaks ~ wool, data=x)) ## now suppose we want to extract the coefficients by group tmp <- by(warpbreaks, tension, function(x) lm(breaks ~ wool, data=x)) sapply(tmp, coef) detach("warpbreaks")