[Rd] array() ignores illegal non-list dimnames

William Dunlap wdunlap at tibco.com
Thu Dec 17 23:40:18 CET 2015

Is there a reason that array() silently ignores dimnames that are not
a list but matrix() gives an error?

  > str(matrix(11:14, 2, 2, dimnames=c("Rows","Cols")))
  Error in matrix(11:14, 2, 2, dimnames = c("Rows", "Cols")) :
    'dimnames' must be a list
  > str(array(11:14, dim=c(2, 2), dimnames=c("Rows","Cols")))
   int [1:2, 1:2] 11 12 13 14

I noticed this in lhs:::geneticLHS, which has the line
            J <- array(NA, dim = c(n, k, pop), dimnames = c("points",
"variables", "hypercubes"))
where the non-list dimnames has no effect, and no warning or error.

Bill Dunlap
TIBCO Software
wdunlap tibco.com

More information about the R-devel mailing list