r / latest / library / cluster / html / lower.to.upper.tri.inds.html

lower.to.upper.tri.inds Permute Indices for Triangular Matrices

Description

Compute index vectors for extracting or reordering of lower or upper triangular matrices that are stored as contiguous vectors.

Usage

lower.to.upper.tri.inds(n)
upper.to.lower.tri.inds(n)

Arguments

n

integer larger than 1.

Value

integer vector containing a permutation of 1:N where N = n(n-1)/2.

See Also

upper.tri, lower.tri with a related purpose.

Examples

m5 <- matrix(NA,5,5)
m <- m5; m[lower.tri(m)] <- upper.to.lower.tri.inds(5); m
m <- m5; m[upper.tri(m)] <- lower.to.upper.tri.inds(5); m

stopifnot(lower.to.upper.tri.inds(2) == 1,
          lower.to.upper.tri.inds(3) == 1:3,
          upper.to.lower.tri.inds(3) == 1:3,
     sort(upper.to.lower.tri.inds(5)) == 1:10,
     sort(lower.to.upper.tri.inds(6)) == 1:15)

Copyright (©) 1999–2012 R Foundation for Statistical Computing.
Licensed under the GNU General Public License.