x is a matrix-like rvar: it returns the diagonal as a vector-like rvar
x is a vector-like rvar: it returns a matrix-like rvar with x as
the diagonal and zero for off-diagonal entries.
Arguments
x
(numeric,rvar) a matrix, vector, 1D array, missing, or a 1- or
2-dimensional rvar.
nrow, ncol
optional dimensions for the result when x is
not a matrix.
names
(when x is a matrix) logical indicating if the
resulting vector, the diagonal of x, should inherit
names from dimnames(x) if available.
Details
Makes base::diag() into a generic function. See that function's documentation
for usage with numerics and for usage of diag<-, which is also supported
by rvar.