From jhallman at frb.gov  Wed Feb  6 17:25:40 2008
From: jhallman at frb.gov (Jeffrey J. Hallman)
Date: Wed, 06 Feb 2008 11:25:40 -0500
Subject: [Rd] argument order for Math2 group functions in R 2.6.x
	(PR#10679)
References: <20080201233503.ABD1E2834632@mail.pubhealth.ku.dk>
	<web-199992018@cgpsrv2.cis.mcmaster.ca>
Message-ID: <xmrsl06aw6z.fsf@mralx1.rsma.frb.gov>

You could always define your own signif() as

signif <- function(x, digits = 6){
   base::signif(x, digits)
}

I do something like this for signif() and round() because economists don't
like the round-to-even convention R uses.  My round() function, for example,
is:

round <- function(x, digits = 0, round.to.even = FALSE){
  ## Fixed to always round 0.5 to 1.  The S "round to even" convention
  ## can be switched on via the round.to.even argument. -- JJH
  xclass <- class(x)
  if(is.matrix(x)){
    digits <- rep(digits, length=ncol(x))
    for(j in 1:ncol(x))
      x[,j] <- round(x[,j], digits = digits[j], round.to.even = round.to.even)
  }
  else {
    if(round.to.even)
      return(base::round(x, digits))
    ten.to.digits <- 10^digits
    x <- trunc((x * ten.to.digits) + (sign(x[]) * 0.5))/ten.to.digits
  }
  class(x) <- xclass
  return(x)
}

Sure, it's a lot slower.  It still saves me several hours a year from not
having to explain what round-to-even does, and why my users should learn to
like it.  They violently object to the idea that

1 + round(1.5) != round(1 + 1.5)


-- 
Jeff



[Rd] argument order for Math2 group functions in R 2.6.x (PR#10679)
Jeffrey J. Hallman