# selectedQr: QR Decomposition Preserving Selected Columns In rmsb: Bayesian Regression Modeling Strategies

 selectedQr R Documentation

## QR Decomposition Preserving Selected Columns

### Description

Runs a matrix through the QR decomposition and returns the transformed matrix and the forward and inverse transforming matrices `⁠R, Rinv⁠`. If columns of the input matrix `X` are centered the QR transformed matrix will be orthogonal. This is helpful in understanding the transformation and in scaling prior distributions on the transformed scale. `not` can be specified to keep selected columns as-is. `cornerQr` leaves the last column of `X` alone (possibly after centering). When `not` is specified, the square transforming matrices have appropriate identity submatrices inserted so that recreation of original `X` is automatic.

### Usage

``````selectedQr(X, not = NULL, corner = FALSE, center = TRUE)
``````

### Arguments

 `X` a numeric matrix `not` an integer vector specifying which columns of `X` are to be kept with their original values `corner` set to `FALSE` to not treat the last column specially. You may not specify both `not` and `corner`. `center` set to `FALSE` to not center columns of `X` first

### Value

list with elements `⁠X, R, Rinv, xbar⁠` where `xbar` is the vector of means (vector of zeros if `center=FALSE`)

### Author(s)

Ben Goodrich and Frank Harrell

### Examples

``````  x <- 1 : 10
X <- cbind(x, x^2)
w <- selectedQr(X)
w
with(w, X %*% R)  # = scale(X, center=TRUE, scale=FALSE)
Xqr <- w\$X
plot(X[, 1], Xqr[, 1])
plot(X[, 1], Xqr[, 2])
cov(X)
cov(Xqr)
X <- cbind(x, x^3, x^4, x^2)
w <- selectedQr(X, not=2:3)
with(w, X %*% R)
``````

rmsb documentation built on Sept. 26, 2023, 5:11 p.m.