# drop.coef

##### Ensure Full Rank Design Matrix

Coefficients (columns) are dropped from a design matrix to ensure that it has full rank.

- Keywords
- models

##### Usage

`drop.coef(X, silent = FALSE)`

##### Arguments

- X
a design matrix, e.g., the result of

`model.matrix`

possibly of less than full column rank, i.e., with redundant parameters. Works for`ncol(X) >= 0`

and`nrow(X) >= 0`

.- silent
should a message not be issued if X is column rank deficient?

##### Details

Redundant columns of the design matrix are identified with the
LINPACK implementation of the `qr`

decomposition and
removed. The returned design matrix will have `qr(X)$rank`

columns.

##### Value

The design matrix `X`

without redundant columns.

##### See Also

##### Examples

```
# NOT RUN {
X <- model.matrix( ~ PRODID * DAY, data = soup)
ncol(X)
newX <- drop.coef(X)
ncol(newX)
## Essentially this is being computed:
qr.X <- qr(X, tol = 1e-7, LAPACK = FALSE)
newX <- X[, qr.X$pivot[1:qr.X$rank], drop = FALSE]
## is newX of full column rank?
ncol(newX) == qr(newX)$rank
## the number of columns being dropped:
ncol(X) - ncol(newX)
# }
```

*Documentation reproduced from package ordinal, version 2019.12-10, License: GPL (>= 2)*

### Community examples

Looks like there are no examples yet.