Scalar operations dropping matrix attributes
Douglas Bates
bates@stat.wisc.edu
Wed, 17 Jun 1998 17:24:54 -0500 (CDT)
In 0.62.1 I found that code like t(mat/vec)/vec seems to drop the
matrix attributes of the result. In this case the matrix is 1x1.
Here is something tracked inside a debug-induced browser.
Browse[1]> data.class(Var)
[1] "matrix"
Browse[1]> Var
(Intercept)
(Intercept) 31.662
Browse[1]>
debug: stdDev <- sqrt(diag(Var))
Browse[1]>
debug: names(stdDev) <- dimnames(Var)[[2]]
Browse[1]>
debug: value <- t(Var/stdDev)/stdDev
Browse[1]> data.class(stdDev)
[1] "numeric"
Browse[1]>
debug: attr(value, "stdDev") <- stdDev
Browse[1]> data.class(value)
[1] "numeric"
(As you might guess this code takes a variance-covariance matrix and
creates a correlation matrix with the standard deviations as an
attribute.)
-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-
r-devel mailing list -- Read http://www.ci.tuwien.ac.at/~hornik/R/R-FAQ.html
Send "info", "help", or "[un]subscribe"
(in the "body", not the subject !) To: r-devel-request@stat.math.ethz.ch
_._._._._._._._._._._._._._._._._._._._._._._._._._._._._._._._._._._._._._._._