R/messageNAMED.R

messageNAMED <- function (possiblynamed, ...) {
  if (is.null(possiblynamed)) {
    message(possiblynamed)
  } else {
    if (is.matrix(possiblynamed) || is.data.frame(possiblynamed)) {
      noms <- colnames(possiblynamed)
    } else noms <- names(possiblynamed)
    fieldwidth <- (max(nchar(noms), nchar(possiblynamed))) + 1
    if (!is.null(noms)) {
      fillstrings <- sapply(nchar(noms), function(n) {
        paste(rep(" ", fieldwidth - n), sep = "", collapse = "")
      })
      message(paste(fillstrings, noms))
    }
    if (is.data.frame(possiblynamed) || is.matrix(possiblynamed)) {
      apply(possiblynamed, 1, function(l) {
        fillstrings <- sapply(nchar(l), function(n) {
          paste(rep(" ", fieldwidth - n), sep = "", collapse = "")
        })
        message(paste(fillstrings, l))
      })
    } else if (is.numeric(possiblynamed)) {
      fillstrings <- sapply(nchar(possiblynamed), function(n) {
        paste(rep(" ", fieldwidth - n), sep = "", collapse = "")
      })
      message(paste(fillstrings, possiblynamed), ...)
    } else message(possiblynamed, ...)
  }
}

Try the blackbox package in your browser

Any scripts or data that you put into this service are public.

blackbox documentation built on May 3, 2023, 9:13 a.m.