Sapply
A Dimension Preserving Variant of "sapply" and "lapply"
Sapply
is equivalent to sapply
, except
that it preserves the dimension and dimension names of the
argument X
. It also preserves the dimension of
results of the function FUN
.
It is intended for application to results e.g.
of a call to by
. Lapply
is an analog
to lapply
insofar as it does not try to simplify
the resulting list
of results of FUN
.
Usage
Sapply(X, FUN, ..., simplify = TRUE, USE.NAMES = TRUE)
Lapply(X, FUN, ...)
Arguments
- X
a vector or list appropriate to a call to
sapply
.- FUN
a function.
- ...
optional arguments to
FUN
.- simplify
a logical value; should the result be simplified to a vector or matrix if possible?
- USE.NAMES
logical; if
TRUE
and ifX
is character, useX
as names for the result unless it had names already.
Value
If FUN
returns a scalar, then the result has the same dimension
as X
, otherwise the dimension of the result is enhanced relative
to X
.
Examples
# NOT RUN {
berkeley <- Aggregate(Table(Admit,Freq)~.,data=UCBAdmissions)
berktest1 <- By(~Dept+Gender,
glm(cbind(Admitted,Rejected)~1,family="binomial"),
data=berkeley)
berktest2 <- By(~Dept,
glm(cbind(Admitted,Rejected)~Gender,family="binomial"),
data=berkeley)
sapply(berktest1,coef)
Sapply(berktest1,coef)
sapply(berktest1,function(x)drop(coef(summary(x))))
Sapply(berktest1,function(x)drop(coef(summary(x))))
sapply(berktest2,coef)
Sapply(berktest2,coef)
sapply(berktest2,function(x)coef(summary(x)))
Sapply(berktest2,function(x)coef(summary(x)))
# }
Community examples
berkeley <- Aggregate(Table(Admit,Freq)~.,data=UCBAdmissions) berktest1 <- By(~Dept+Gender, glm(cbind(Admitted,Rejected)~1,family="binomial"), data=berkeley) berktest2 <- By(~Dept, glm(cbind(Admitted,Rejected)~Gender,family="binomial"), data=berkeley) sapply(berktest1,coef) Sapply(berktest1,coef) sapply(berktest1,function(x)drop(coef(summary(x)))) Sapply(berktest1,function(x)drop(coef(summary(x)))) sapply(berktest2,coef) Sapply(berktest2,coef) sapply(berktest2,function(x)coef(summary(x))) Sapply(berktest2,function(x)coef(summary(x)))