RandomHyperArray-class: DelayedArray of random hypergeometric-distributed values

RandomHyperArray-classR Documentation

DelayedArray of random hypergeometric-distributed values

Description

A DelayedArray subclass that performs on-the-fly sampling of hypergeometric-distributed values.

Usage

RandomHyperArraySeed(dim, m, n, k, chunkdim = NULL, sparse = FALSE)

## S4 method for signature 'RandomHyperArraySeed'
DelayedArray(seed)

RandomHyperArray(dim, m, n, k, chunkdim = NULL, sparse = FALSE)

Arguments

dim

Integer vector of positive length, specifying the dimensions of the array.

m, n, k

Numeric vector used as the argument of the same name in qhyper. Alternatively, a numeric array-like object with the same dimensions as dim.

chunkdim

Integer vector of length equal to dim, containing the dimensions of each chunk.

sparse

Logical scalar indicating whether the sampled array should be treated as sparse.

seed

A RandomHyperArraySeed object.

Value

All constructors return an instance of a RandomHyperArray object, containing random draws from a hypergeometric distribution with the specified parameters.

Author(s)

Aaron Lun

See Also

The RandomArraySeed class, for details on chunking and the distributional parameters.

Examples

X <- RandomHyperArraySeed(c(1e5, 1e5), m=10, n=20, k=15)
Y <- DelayedArray(X)
Y

# Fiddling with the distribution parameters:
X2 <- RandomHyperArraySeed(c(1e5, 1e5), m=round(runif(1e5, 10, 20)), 
    n=20, k=15, sparse=TRUE)
Y2 <- DelayedArray(X2)
Y2

# Using another array as input:
library(Matrix)
m <- round(RandomUnifArray(c(1e5, 1e5), 10, 20))
X3 <- RandomHyperArraySeed(c(1e5, 1e5), m=m, n=50, k=20)
Y3 <- DelayedArray(X3)
Y3


LTLA/DelayedRandomArray documentation built on July 7, 2024, 12:39 p.m.