beta-utils | R Documentation |
The parameter \boldsymbol \beta
specifies the input distribution
X \sim F_X(x \mid \boldsymbol \beta)
.
beta2tau
converts \boldsymbol \beta
to the transformation vector
\tau = (\mu_x, \sigma_x, \gamma = 0, \alpha = 1, \delta = 0)
, which
defines the Lambert W\times
F random variable mapping from X
to Y
(see tau-utils
). Parameters \mu_x
and
\sigma_x
of X
in general depend on \boldsymbol \beta
(and may not even exist for use.mean.variance = TRUE
; in this case
beta2tau
will throw an error).
check_beta
checks if \boldsymbol \beta
defines a
valid distribution, e.g., for normal distribution 'sigma'
must be
positive.
estimate_beta
estimates \boldsymbol \beta
for a given
F_X
using MLE or methods of moments. Closed form solutions
are used if they exist; otherwise the MLE is obtained numerically using
fitdistr
.
get_beta_names
returns (typical) names for each component of
\boldsymbol \beta
.
Depending on the distribution
\boldsymbol \beta
has different length and names: e.g.,
for a "normal"
distribution beta
is of length
2
("mu"
, "sigma"
); for an "exp"
onential
distribution beta
is a scalar (rate "lambda"
).
beta2tau(beta, distname, use.mean.variance = TRUE)
check_beta(beta, distname)
estimate_beta(x, distname)
get_beta_names(distname)
beta |
numeric; vector |
distname |
character; name of input distribution; see
|
use.mean.variance |
logical; if |
x |
a numeric vector of real values (the input data). |
estimate_beta
does not do any data transformation as part of the
Lambert W\times
F input/output framework. For an initial estimate
of \theta
for Lambert W\times
F distributions see
get_initial_theta
and get_initial_tau
.
A quick initial estimate of \theta
is obtained by first finding the
(approximate) input \widehat{\boldsymbol x}_{\widehat{\theta}}
by
IGMM
, and then getting the MLE of \boldsymbol \beta
for this input data \widehat{\boldsymbol x}_{\widehat{\theta}} \sim
F_X(x \mid \boldsymbol \beta)
(usually using
fitdistr
).
beta2tau
returns a numeric vector, which is \tau =
\tau(\boldsymbol \beta)
implied by beta
and distname
.
check_beta
throws an error if \boldsymbol \beta
is not
appropriate for the given distribution; e.g., if it has too many values
or if they are not within proper bounds (e.g., beta['sigma']
of a
"normal"
distribution must be positive).
estimate_beta
returns a named vector with estimates for
\boldsymbol \beta
given x
.
get_beta_names
returns a vector of characters.
tau-utils
, theta-utils
# By default: delta = gamma = 0 and alpha = 1
beta2tau(c(1, 1), distname = "normal")
## Not run:
beta2tau(c(1, 4, 1), distname = "t")
## End(Not run)
beta2tau(c(1, 4, 1), distname = "t", use.mean.variance = FALSE)
beta2tau(c(1, 4, 3), distname = "t") # no problem
## Not run:
check_beta(beta = c(1, 1, -1), distname = "normal")
## End(Not run)
set.seed(124)
xx <- rnorm(100)^2
estimate_beta(xx, "exp")
estimate_beta(xx, "chisq")
Add the following code to your website.
For more information on customizing the embed code, read Embedding Snippets.