lapply
and sapply
with indexImprove base::lapply()
and base::sapply()
functions by allowing
an extra index argument .I
to be passed into the function given in FUN
.
If the function given in FUN
has an argument .I
then, for each entry
of X
passed into FUN
the corresponding index is passed into
argument .I
. If the function given in FUN
has no argument .I
,
then lapplI
and sapplI
are exactly the same as
base::lapply()
and base::sapply()
.
Besides this extra feature, there is no difference to base::lapply()
and
base::sapply()
.
lapplI(X, FUN, ...)sapplI(X, FUN, ..., simplify = TRUE, USE.NAMES = TRUE)
a vector (atomic or list) or an expression
object. Other objects (including classed objects) will be coerced
by base::as.list
.
Here comes the great difference to base::lapply()
and
base::sapply()
. When using lapplI
and sapplI
, the function
passed into FUN
may also have an extra argument .I
. If it does, then
for each item of X
the current item index
is passed into argument .I
of FUN
.
Besides this extra feature, there is no difference to base::lapply()
and
base::sapply()
.
optional arguments to FUN
.
logical or character string; should the result be
simplified to a vector, matrix or higher dimensional array if
possible? For sapply
it must be named and not abbreviated.
The default value, TRUE
, returns a vector or matrix if appropriate,
whereas if simplify = "array"
the result may be an
array
of “rank”
(\(=\)length(dim(.))
) one higher than the result
of FUN(X[[i]])
.
logical; if TRUE
and if X
is character,
use X
as names
for the result unless it had names
already. Since this argument follows …
its name cannot
be abbreviated.