colProds-xgCMatrix-method: Calculates the product for each row (column) in a matrix

Description Usage Arguments Details Value See Also Examples

Description

Calculates the product for each row (column) in a matrix

Usage

1
2
3
4
5
## S4 method for signature 'xgCMatrix'
colProds(x, rows = NULL, cols = NULL, na.rm = FALSE, ...)

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

Arguments

x

An NxK matrix-like object.

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, NAs are excluded first, otherwise not.

...

Additional arguments passed to specific methods.

Details

Attention: This method ignores the order of the values, because it assumes that the product is commutative. Unfortunately, for 'double' this is not true. For example 'NaN * NA = NaN', but 'NA * NaN = NA'. This is relevant for this function if there are '+-Inf', because 'Inf * 0 = NaN'. This function returns 'NA' whenever there is 'NA' in the input. This is different from 'matrixStats::colProds()'.

Value

Returns a numeric vector of length N (K).

See Also

Examples

1
2
3
4
5
6
7
8
9
mat <- matrix(rnorm(15), nrow = 5, ncol = 3)
  mat[2, 1] <- NA
  mat[3, 3] <- Inf
  mat[4, 1] <- 0
  
  print(mat)
  
  rowProds(mat)
  colProds(mat)

sparseMatrixStats documentation built on Feb. 4, 2021, 2 a.m.