aggregatingFunction1: 1-ary Aggregating functions
Description
aggregatinFuntion1
creates statistical summaries of one numerical vector that are formula aware.
Usage
aggregatingFunction1(fun, output.multiple = FALSE, envir = parent.frame(), na.rm = getOption("na.rm", FALSE), style = c("formula1st", "formula", "flexible"))
Arguments
fun
a function that takes a numeric vector and computes a summary statistic,
returning a numeric vector.
output.multiple
a boolean indicating whether fun
returns multiple values
envir
an environment in which evaluation takes place.
na.rm
the default value for na.rm in the resulting function.
style
one of "formula1st"
, "formula2nd"
or "flexible"
. In the first
two cases, the first argument must be a formula or evaluate to an object. In the latter case,
bare names will be converted into formulas.
Value
a function that generalizes fun
to handle a formula/data frame interface.
Note
Earlier versions of this function supported a "bare name + data frame" interface. This
functionality has been removed since it was (a) ambiguous in some cases, (b) unnecessary, and (c)
difficult to maintain.Details
The logic of the resulting function is this: 1) If the first argument is a formula,
use that formula and data
to create the necessary call(s) to fun
; (2) Else simply
pass everything to fun
for evaluation.
Examples
Run this codeif (require(mosaicData)) {
foo <- aggregatingFunction1(base::mean)
foo( ~ length, data=KidsFeet)
base::mean(KidsFeet$length)
foo(length ~ sex, data=KidsFeet)
}
Run the code above in your browser using DataLab