| Type: | Package |
| Title: | Apply a Function Over Expressions |
| Version: | 0.1.2 |
| Description: | Evaluate a function over a data frame of expressions. |
| License: | GPL-3 |
| Depends: | R (≥ 3.0.0) |
| Imports: | magrittr, methods |
| Suggests: | testthat, knitr, rmarkdown |
| VignetteBuilder: | knitr |
| URL: | https://github.com/wlandau/eply |
| BugReports: | https://github.com/wlandau/eply/issues |
| RoxygenNote: | 6.0.1 |
| NeedsCompilation: | no |
| Packaged: | 2018-04-06 13:57:21 UTC; c240390 |
| Author: | William Michael Landau [aut, cre], Eli Lilly and Company [cph] |
| Maintainer: | William Michael Landau <will.landau@gmail.com> |
| Repository: | CRAN |
| Date/Publication: | 2018-04-06 16:35:43 UTC |
The eply package provides ways to call
eval(parse(text = ...)) in bulk.
The evals() function is a vectorized version of
eval(parse(text = ...)). eply() is like
apply(MARGIN = 1) except that the elements of each row
are eval(parse(text = ...))'ed before being supplied
to the function.
Description
The eply package provides ways to call
eval(parse(text = ...)) in bulk.
The evals() function is a vectorized version of
eval(parse(text = ...)). eply() is like
apply(MARGIN = 1) except that the elements of each row
are eval(parse(text = ...))'ed before being supplied
to the function.
Author(s)
William Michael Landau will.landau@gmail.com
References
<https://github.com/wlandau/eply>
Examples
# Get an example data frame of commands that evaluate to function arguments.
.expr <- example.expr()
.fun <- example.fun # Get an example collection of functions.
# Get an example list of supporting data. Could be an environment.
.with <- example.with()
# Row-by-row, evaluate the code in .expr and feed the results to the function.
eply(.fun = .fun, .expr = .expr, .with = .with)
evals(x = c("a + 1", "b + 2"), .with = .with)
Function eply
Description
Apply a function over a data frame of quoted expressions.
Parallel execution is available using the .split and .tasks arguments.
Usage
eply(.fun, .expr, .with = parent.frame())
Arguments
.fun |
function to evaluate. |
.expr |
data frame of quoted expressions. Column names must
contain the argument names of |
.with |
list, data frame, or environment with the
data accessible to |
Details
.fun is a function, and .expr is a data frame.
In .expr, each row stands for a single call to .fun, and each
column stands for an argument. Each element is a quoted expression that
uses the data in .with during evaluation.
When eply is called on each row, the expressions
are evaluated on .with,
and the results are given to .fun as function arguments.
The column names of .expr must
contain the argument names of .fun.
With .tasks and .split, Mac and Linux users can
distribute the work over multiple parallel tasks. See the vignette for an
example (vignette("eply")).
Value
a list or vector of return values of .fun.
See Also
Examples
# Get an example data frame of commands that evaluate to function arguments.
.expr <- example.expr()
.fun <- example.fun # Get an example collection of functions.
# Get an example list of supporting data. Could be an environment.
.with <- example.with()
# Row-by-row, evaluate the code in .expr and feed the results to the function.
eply(.fun = .fun, .expr = .expr, .with = .with)
Function evals
Description
Evaluate a character vector as a bunch of expressions.
Usage
evals(x = NULL, .with = parent.frame(), .simplify = TRUE)
Arguments
x |
character vector of expressions to evaluate |
.with |
list, data frame, or environment with the
data accessible to the expressions in |
.simplify |
|
Value
a list or vector of return values of .fun.
See Also
Examples
# Get an example list of supporting data. Could be an environment.
.with <- example.with()
# Row-by-row, evaluate the code in .expr and feed the results to the function.
evals(x = c("a + 1", "b + 2"), .with = .with)
example.expr
Description
Return example .expr argument for eply.
Usage
example.expr()
Value
Example .expr argument to eply.
See Also
Examples
#' Get an example .expr argument to eply().
#' See the examples of the eply() function for usage.
example.expr()
example.fun
Description
Example .fun argument to eply.
Usage
example.fun(x, y)
Arguments
x |
numeric argument |
y |
nonzero numeric argument |
Value
Example .fun argument to eply.
See Also
Examples
#' Get an example .fun argument to eply().
#' See the examples of the eply() function for usage.
example.fun
example.fun(x = c(4, 2), y = c(2, 2))
example.with
Description
Return example .with argument of eply.
Usage
example.with()
Value
example .with argument of eply
See Also
Examples
#' Get an example .with argument to eply() and evals().
#' See the examples of the eply() and evals() functions for usage.
example.with()
Function help_eply
Description
Prints links for tutorials, troubleshooting, bug reports, etc.
Usage
help_eply()
See Also
Examples
help_eply()
Function quotes
Description
Put quotes around each element of a character vector.
Usage
quotes(x = NULL, single = FALSE)
Arguments
x |
character vector or object to be coerced to character. |
single |
Add single quotes if |
Value
character vector with quotes around it
See Also
unquote, strings,
eply, help_eply
Examples
quotes(letters[1:3])
quotes(letters[1:3], single = TRUE)
quotes(letters[1:3], single = FALSE)
Function strings
Description
Turn valid expressions into character strings.
Usage
strings(...)
Arguments
... |
unquoted symbols to turn into character strings. |
Value
a character vector
See Also
quotes, unquote,
eply, help_eply
Examples
strings(a, b, bee)
Function unquote
Description
Remove leading and trailing escaped quotes from character strings.
Usage
unquote(x = NULL, deep = FALSE)
Arguments
x |
character vector |
deep |
remove all outer quotes if |
Value
character vector without leading or trailing escaped quotes around it
See Also
quotes, strings,
eply, help_eply
Examples
unquote(c("x", "'y'", "\"why\"", "'''z'''"))
unquote(c("x", "'y'", "\"why\"", "'''z'''"), deep = FALSE)
unquote(c("x", "'y'", "\"why\"", "'''z'''"), deep = TRUE)