bounds(nums, dup.inds=FALSE, pre.sort=TRUE)
Find the bounds (i.e. start, end and length) of consecutive numbers within a larger set of numbers in a given vector.
This is a simple utility function useful for summarizing the contents of a numeric vector. For example: find the start position, end position and lengths of secondary structure elements given a vector of residue numbers obtained from a DSSP secondary structure prediction.
By setting dup.inds to TRUE then the indices of the first (start) and last (end) duplicated elements of the vector are returned. For example: find the indices of atoms belonging to a particular residue given a vector of residue numbers (see below).
Grant, B.J. et al. (2006) Bioinformatics 22, 2695--2696.
test <- c(seq(1,5,1),8,seq(10,15,1)) bounds(test)start end length 1 1 5 5 2 8 8 1 3 10 15 6test <- rep(c(1,2,4), times=c(2,3,4)) bounds(test, dup.ind=TRUE)start end length [1,] 1 1 2 2 [2,] 2 3 5 3 [3,] 3 6 9 4