cov.wt {stats} R Documentation

## Weighted Covariance Matrices

### Description

Returns a list containing estimates of the weighted covariance matrix and the mean of the data, and optionally of the (weighted) correlation matrix.

### Usage

```cov.wt(x, wt = rep(1/nrow(x), nrow(x)), cor = FALSE, center = TRUE,
method = c("unbiased", "ML"))
```

### Arguments

 `x` a matrix or data frame. As usual, rows are observations and columns are variables. `wt` a non-negative and non-zero vector of weights for each observation. Its length must equal the number of rows of `x`. `cor` a logical indicating whether the estimated correlation weighted matrix will be returned as well. `center` either a logical or a numeric vector specifying the centers to be used when computing covariances. If `TRUE`, the (weighted) mean of each variable is used, if `FALSE`, zero is used. If `center` is numeric, its length must equal the number of columns of `x`. `method` string specifying how the result is scaled, see ‘Details’ below. Can be abbreviated.

### Details

By default, `method = "unbiased"`, The covariance matrix is divided by one minus the sum of squares of the weights, so if the weights are the default (1/n) the conventional unbiased estimate of the covariance matrix with divisor (n - 1) is obtained. This differs from the behaviour in S-PLUS which corresponds to `method = "ML"` and does not divide.

### Value

A list containing the following named components:

 `cov` the estimated (weighted) covariance matrix `center` an estimate for the center (mean) of the data. `n.obs` the number of observations (rows) in `x`. `wt` the weights used in the estimation. Only returned if given as an argument. `cor` the estimated correlation matrix. Only returned if `cor` is `TRUE`.

`cov` and `var`.
``` (xy <- cbind(x = 1:10, y = c(1:3, 8:5, 8:10)))