adrop {abind} | R Documentation |
Drop degenerate dimensions of an array object. Offers more control
than the drop()
function.
adrop(x, drop = TRUE, named.vector = TRUE, one.d.array = FALSE)
x |
An array (including a matrix) |
drop |
A logical or numeric vector describing the dimensions to be dropped. |
named.vector |
(Optional, defaults to TRUE . Controls
whether a vector result has names derived from the dimnames
of x . |
one.d.array |
(Optional, defaults to FALSE . If
TRUE , a one-dimensional array result will be an object with a
dim attribute of
length 1, and possibly a dimnames attribute. If
FALSE , a one-dimensional result will be a vector object
(named if named.vector==TRUE ). |
Dimensions can only be dropped if their extent is one, i.e., dimension
i
of array x
can be dropped only if dim(x)[i]==1
.
It is an error to request adrop
to drop a dimension whose
extent is not 1.
If x
is an object with a dim
attribute (e.g., a matrix or
array
), then adrop
returns an object like x
,
but with the requested
extents of length one removed. Any accompanying dimnames
attribute is adjusted and returned with x
.
Tony Plate tplate@acm.org
x <- array(1:24,dim=c(2,3,4),dimnames=list(letters[1:2],LETTERS[1:3],letters[23:26])) adrop(x[1,,,drop=FALSE],drop=1) adrop(x[,1,,drop=FALSE],drop=2) adrop(x[,,1,drop=FALSE],drop=3) adrop(x[1,1,1,drop=FALSE],drop=1) adrop(x[1,1,1,drop=FALSE],drop=2) adrop(x[1,1,1,drop=FALSE],drop=3) adrop(x[1,1,1,drop=FALSE],drop=1:2) adrop(x[1,1,1,drop=FALSE],drop=1:2,one.d=TRUE) adrop(x[1,1,1,drop=FALSE],drop=1:2,named=FALSE) dim(adrop(x[1,1,1,drop=FALSE],drop=1:2,one.d=TRUE)) dimnames(adrop(x[1,1,1,drop=FALSE],drop=1:2,one.d=TRUE)) names(adrop(x[1,1,1,drop=FALSE],drop=1:2,one.d=TRUE)) dim(adrop(x[1,1,1,drop=FALSE],drop=1:2)) dimnames(adrop(x[1,1,1,drop=FALSE],drop=1:2)) names(adrop(x[1,1,1,drop=FALSE],drop=1:2))