Sample feature abundance values from the given distributions. This function
is used internally by simphony(), and should not usually need to be
called directly.
Usage
getSampledAbund(
abundDt,
logOdds = FALSE,
family = c("gaussian", "negbinom", "bernoulli", "poisson"),
inplace = FALSE
)Arguments
- abundDt
data.tableof expected abundance. Iffamilyis 'gaussian', required columns arefeature,sample,mu, andsd. Iffamilyis 'negbinom', required columns arefeature,sample,mu,dispFunc,cond, andgroup. Iffamilyis 'bernoulli' or 'poisson', required columns arefeature,sample, andmu.- logOdds
Logical for whether
mucorresponds to log-odds. Only used iffamilyis 'bernoulli'.- family
Character string for the family of distributions from which to sample the abundance values.
simphonywill give a warning if it tries to sample from a distribution outside the region in which the distribution is defined: \(\mu < 0\) for negative binomial and Poisson, and \(\mu < 0\) or \(\mu > 1\) for Bernoulli.- inplace
Logical for whether to modify
abundDtin-place, adding a columnabundcontaining the abundance values.
Value
Matrix of abundance values, where rows correspond to features and columns correspond to samples.
Examples
library('data.table')
set.seed(6022)
abundDt = data.table(feature = 'feature_1', sample = c('sample_1', 'sample_2'),
mu = c(0, 5), sd = 1)
abundMat = getSampledAbund(abundDt)