colWeightedSds,xgCMatrix-method {sparseMatrixStats} | R Documentation

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

### Description

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

### Usage

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

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

### 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.

### Details

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

### Value

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

### See Also

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

- See also rowSds 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)
      rowWeightedSds(mat, w = w[1:3])
      colWeightedSds(mat, w = w)

[Package sparseMatrixStats version 1.2.1 Index]