mle_nb {depower} | R Documentation |
MLE for NB
Description
Maximum likelihood estimates (MLE) for two independent negative binomial outcomes.
Usage
mle_nb_null(
data,
equal_dispersion = FALSE,
ratio_null = 1,
method = "nlm_constrained",
...
)
mle_nb_alt(data, equal_dispersion = FALSE, method = "nlm_constrained", ...)
Arguments
data |
(list) |
equal_dispersion |
(Scalar logical: |
ratio_null |
(Scalar numeric: |
method |
(string: |
... |
Optional arguments passed to the optimization method. |
Details
These functions are primarily designed for speed in simulation. Missing values are silently excluded.
Suppose X_1 \sim \text{NB}(\mu, \theta_1)
and
X_2 \sim \text{NB}(r\mu, \theta_2)
, where X_1
and X_2
are
independent, X_1
is the count outcome for items in group 1, X_2
is the count outcome for items in group 2, \mu
is the arithmetic mean
count in group 1, r
is the ratio of arithmetic means for group 2 with
respect to group 1, \theta_1
is the dispersion parameter of group 1,
and \theta_2
is the dispersion parameter of group 2.
The MLEs of r
and \mu
are \hat{r} = \frac{\bar{x}_2}{\bar{x}_1}
and \hat{\mu} = \bar{x}_1
. The MLEs of \theta_1
and \theta_2
are found by maximizing the profile log-likelihood
l(\hat{r}, \hat{\mu}, \theta_1, \theta_2)
with respect to
\theta_1
and \theta_2
. When r = r_{null}
is known, the MLE
of \mu
is
\tilde{\mu} = \frac{n_1 \bar{x}_1 + n_2 \bar{x}_2}{n_1 + n_2}
and
\tilde{\theta}_1
and \tilde{\theta}_2
are obtained by maximizing
the profile log-likelihood l(r_{null}, \tilde{\mu}, \theta_1, \theta_2)
.
The backend method for numerical optimization is controlled by argument
method
which refers to stats::nlm()
, stats::nlminb()
, or
stats::optim()
. If you would like to see warnings from the optimizer,
include argument warnings = TRUE
.
Value
For
mle_nb_alt()
, a list with the following elements:Slot Name Description 1 mean1
MLE for mean of group 1. 2 mean2
MLE for mean of group 2. 3 ratio
MLE for ratio of means. 4 dispersion1
MLE for dispersion of group 1. 5 dispersion2
MLE for dispersion of group 2. 6 equal_dispersion
Were equal dispersions assumed. 7 n1
Sample size of group 1. 8 n2
Sample size of group 2. 9 nll
Minimum of negative log-likelihood. 10 nparams
Number of estimated parameters. 11 method
Method used for the results. 12 mle_method
Method used for optimization. 13 mle_code
Integer indicating why the optimization process terminated. 14 mle_message
Additional information from the optimizer. For
mle_nb_null()
, a list with the following elements:Slot Name Description 1 mean1
MLE for mean of group 1. 2 mean2
MLE for mean of group 2. 3 ratio_null
Population ratio of means assumed for null hypothesis. mean2 = mean1 * ratio_null
.4 dispersion1
MLE for dispersion of group 1. 5 dispersion2
MLE for dispersion of group 2. 6 equal_dispersion
Were equal dispersions assumed. 7 n1
Sample size of group 1. 8 n2
Sample size of group 2. 9 nll
Minimum of negative log-likelihood. 10 nparams
Number of estimated parameters. 11 method
Method used for the results. 12 mle_method
Method used for optimization. 13 mle_code
Integer indicating why the optimization process terminated. 14 mle_message
Additional information from the optimizer.
References
Rettiganti M, Nagaraja HN (2012). “Power Analyses for Negative Binomial Models with Application to Multiple Sclerosis Clinical Trials.” Journal of Biopharmaceutical Statistics, 22(2), 237–259. ISSN 1054-3406, 1520-5711, doi:10.1080/10543406.2010.528105.
Aban IB, Cutter GR, Mavinga N (2009). “Inferences and power analysis concerning two negative binomial distributions with an application to MRI lesion counts data.” Computational Statistics & Data Analysis, 53(3), 820–833. ISSN 01679473, doi:10.1016/j.csda.2008.07.034.
See Also
Examples
#----------------------------------------------------------------------------
# mle_nb() examples
#----------------------------------------------------------------------------
library(depower)
d <- sim_nb(
n1 = 60,
n2 = 40,
mean1 = 10,
ratio = 1.5,
dispersion1 = 2,
dispersion2 = 8
)
mle_alt <- d |>
mle_nb_alt()
mle_null <- d |>
mle_nb_null()
mle_alt
mle_null