seqm {cwhmisc}R Documentation

sequences, empty if "by" not conforming

Description

Generate sequences, but return NULL, when "seq" would generate an error.This function is useful for for-loops, when empty loops are required, if by is in the "wrong" direction, see examples.

Usage

  seqm(from, to, by=1)

Arguments

from starting value of sequence.
to (maximal) end value of the sequence.
by increment of the sequence.

Value

NULL, if (to-from)*by <0, otherwise usual result of seq i.e. seq.default.

Author(s)

Christian W. Hoffmann <c-w.hoffmann@sunrise.ch>
http://www.wsl.ch/personal_homepages/hoffmann/index_EN?-C=&n

Examples

  seqm(12,4,-1)  #  12 11 10  9  8  7  6  5  4
  seqm(12,4,2)   #  NULL
  lo <- 1; up <- 3
  for (ii in lo:up) {
    cat(ii,"    ")
    for (kk in seqm(lo,ii-1)) {
      cat("   ",kk)  # do-in-lower-triangle
    }
    cat(" diag")     # do-something-on-the-diagonal
    for (kk in seqm(ii+1,up)) {
      cat("  :",kk)  # do-in-upper-traingle
    }
    cat("\n")    
  }
# 1      diag  : 2  : 3
# 2         1 diag  : 3
# 3         1    2 diag

[Package cwhmisc version 2.0.1 Index]