unaryapply_byname {matsbyname} | R Documentation |
Apply a unary function by name
Description
FUN
is applied to a
using additional arguments .FUNdots
to FUN
.
If a
is a list, the names of a
are applied to the output.
Usage
unaryapply_byname(
FUN,
a,
.FUNdots = NULL,
rowcoltypes = c("all", "transpose", "row", "col", "none")
)
Arguments
FUN |
a unary function to be applied "by name" to |
a |
the argument to |
.FUNdots |
a list of additional named arguments passed to |
rowcoltypes |
a string that tells how to transfer row and column types of |
Details
Note that .FUNdots
can be a rectangular two-dimensional list of arguments to FUN
.
If so, .FUNdots
is interpreted as follows:
The first dimension of
.FUNdots
contains named arguments toFUN
.The second dimension of
.FUNdots
contains unique values of the named arguments to be applied along the list that isa
.
The length of the first dimension of .FUNdots
is the number of arguments supplied to FUN
.
The length of the second dimension of .FUNdots
must be equal to the length of a
.
See prepare_.FUNdots()
for more details on the .FUNdots
argument.
Options for the rowcoltypes
argument are:
"all": transfer both row and column types of
a
directly to output."transpose": rowtype of
a
becomes coltype of output; coltype ofa
becomes rowtype of output. "transpose" is helpful forFUN
s that transposea
upon output."row": rowtype of
a
becomes both rowtype and coltype of output."col": coltype of
a
becomes both rowtype and coltype of output."none": rowtype and coltype not set by
unaryapply_byname
. Rather,FUN
will set rowtype and coltype.
Note that rowcoltypes
should not be a vector or list of strings.
Rather, it should be a single string.
Value
the result of applying FUN
"by name" to a
.
Examples
productnames <- c("p1", "p2")
industrynames <- c("i1", "i2")
U <- matrix(1:4, ncol = 2, dimnames = list(productnames, industrynames)) %>%
setrowtype("Products") %>% setcoltype("Industries")
difference_byname(0, U)
unaryapply_byname(`-`, U)