View source: R/f_likelihoodEqs.R
negLLzeroSquash | R Documentation |
negLLzeroSquash
computes the negative log-likelihood based on the
unconditional marginal distribution of N (DuMouchel et al. 2001).
This function is minimized to estimate the hyperparameters of the prior
distribution. Use this function if including zero counts and using data
squashing. Generally this function is not recommended unless convergence
issues occur without zero counts (negLLsquash
is typically more
efficient).
negLLzeroSquash(theta, ni, ei, wi)
theta |
A numeric vector of hyperparameters ordered as:
|
ni |
A whole number vector of squashed actual counts from
|
ei |
A numeric vector of squashed expected counts from
|
wi |
A whole number vector of bin weights from |
The marginal distribution of the counts, N, is a mixture of two negative binomial distributions. The hyperparameters for the prior distribution (mixture of gammas) are estimated by optimizing the likelihood equation from this marginal distribution.
The hyperparameters are:
\alpha_1, \beta_1
: Parameters of the first component of the
marginal distribution of the counts (also the prior distribution)
\alpha_2, \beta_2
: Parameters of the second component
P
: Mixture fraction
This function will not need to be called directly if using
exploreHypers
or autoHyper
.
A scalar negative log-likelihood value.
Make sure ni actually contains zeroes before using this function.
You should have used the zeroes = TRUE
option when calling the
processRaw
function.
Make sure the data were actually squashed (see squashData
)
before using this function.
DuMouchel W, Pregibon D (2001). "Empirical Bayes Screening for Multi-item Associations." In Proceedings of the Seventh ACM SIGKDD International Conference on Knowledge Discovery and Data Mining, KDD '01, pp. 67-76. ACM, New York, NY, USA. ISBN 1-58113-391-X.
nlm
, nlminb
, and
optim
for optimization and squashData
for data squashing
Other negative log-likelihood functions:
negLLsquash()
,
negLLzero()
,
negLL()
Add the following code to your website.
For more information on customizing the embed code, read Embedding Snippets.