colWeightedVars,xgCMatrix-method {sparseMatrixStats} | R Documentation

## Calculates the weighted variance for each row (column) of a matrix-like object

### Description

Calculates the weighted variance for each row (column) of a matrix-like object.

### Usage

    ## S4 method for signature 'xgCMatrix'
    colWeightedVars(
      x,
      w = NULL,
      rows = NULL,
      cols = NULL,
      na.rm = FALSE,
      useNames = NA
    )

    ## S4 method for signature 'xgCMatrix'
    rowWeightedVars(
      x,
      w = NULL,
      rows = NULL,
      cols = NULL,
      na.rm = FALSE,
      useNames = NA
    )

### Arguments

`x` | An NxK matrix-like object.
`w` | A `numeric` vector of length K (N) that specifies by how much each element is weighted.
`rows` | A `vector` indicating the subset of rows (and/or columns) to operate over. If `NULL`, no subsetting is done.
`cols` | A `vector` indicating the subset of rows (and/or columns) to operate over. If `NULL`, no subsetting is done.
`na.rm` | If `TRUE`, `NA`s are excluded first, otherwise not.
`useNames` | If `NA`, the default behavior of the function about naming support is remained. If `FALSE`, no naming support is done. Else if `TRUE`, names attributes of result are set.

### Details

The S4 methods for `x` of type `matrix`, `array`, or `numeric` call `matrixStats::rowWeightedVars` / `matrixStats::colWeightedVars`.

### Value

Returns a `numeric` `vector` of length N (K).

### See Also

- `matrixStats::rowWeightedVars()` and `matrixStats::colWeightedVars()` which are used when the input is a `matrix` or `numeric` vector.

- See also rowVars for the corresponding unweighted function.

### Examples

    mat <- matrix(rnorm(15), nrow = 5, ncol = 3)
      mat[2, 1] <- NA
      mat[3, 3] <- Inf
      mat[4, 1] <- 0

      print(mat)
      w <- rnorm(n = 5, mean = 3)
      rowWeightedVars(mat, w = w[1:3])
      colWeightedVars(mat, w = w)

[Package sparseMatrixStats version 1.6.0 Index]