View source: R/ml_estimation.R
| ml_estimation.default | R Documentation |
This function estimates the parameters of a parametric lifetime distribution for complete and (multiple) right-censored data. The parameters are determined in the frequently used (log-)location-scale parameterization.
For the Weibull, estimates are additionally transformed such that they are in line with the parameterization provided by the stats package (see Weibull).
## Default S3 method:
ml_estimation(
x,
status,
distribution = c("weibull", "lognormal", "loglogistic", "sev", "normal", "logistic",
"weibull3", "lognormal3", "loglogistic3", "exponential", "exponential2"),
wts = rep(1, length(x)),
conf_level = 0.95,
start_dist_params = NULL,
control = list(),
...
)
x |
A numeric vector which consists of lifetime data. Lifetime data could be every characteristic influencing the reliability of a product, e.g. operating time (days/months in service), mileage (km, miles), load cycles. |
status |
A vector of binary data (0 or 1) indicating whether a unit is a right censored observation (= 0) or a failure (= 1). |
distribution |
Supposed distribution of the random variable. |
wts |
Optional vector of case weights. The length of |
conf_level |
Confidence level of the interval. |
start_dist_params |
Optional vector with initial values of the (log-)location-scale parameters. |
control |
A list of control parameters (see 'Details' and optim). |
... |
Further arguments passed to or from other methods. Currently not used. |
Within ml_estimation, optim is called with method = "BFGS"
and control$fnscale = -1 to estimate the parameters that maximize the
log-likelihood (see loglik_function). For threshold models, the profile
log-likelihood is maximized in advance (see loglik_profiling). Once the
threshold parameter is determined, the threshold model is treated like a
distribution without threshold (lifetime is reduced by threshold estimate)
and the general optimization routine is applied.
Normal approximation confidence intervals for the parameters are computed as well.
A list with classes wt_model, wt_ml_estimation and wt_model_estimation
which contains:
coefficients : A named vector of estimated coefficients (parameters of the
assumed distribution). Note: The parameters are given in the
(log-)location-scale-parameterization.
confint : Confidence intervals for the (log-)location-scale parameters.
shape_scale_coefficients : Only included if distribution is "weibull"
or "weibull3" (parameterization used in Weibull).
shape_scale_confint : Only included if distribution is "weibull"
or "weibull3". Confidence intervals for scale \eta and shape \beta
(and threshold \gamma if distribution = "weibull3").
varcov : Estimated variance-covariance matrix of (log-)location-scale parameters.
logL : The log-likelihood value.
aic : Akaike Information Criterion.
bic : Bayesian Information Criterion.
data : A tibble with columns x and status.
distribution : Specified distribution.
Meeker, William Q; Escobar, Luis A., Statistical methods for reliability data, New York: Wiley series in probability and statistics, 1998
ml_estimation
# Vectors:
obs <- seq(10000, 100000, 10000)
status_1 <- c(0, 1, 1, 0, 0, 0, 1, 0, 1, 0)
cycles <- alloy$cycles
status_2 <- alloy$status
# Example 1 - Fitting a two-parametric weibull distribution:
ml <- ml_estimation(
x = obs,
status = status_1,
distribution = "weibull",
conf_level = 0.90
)
# Example 2 - Fitting a three-parametric lognormal distribution:
ml_2 <- ml_estimation(
x = cycles,
status = status_2,
distribution = "lognormal3"
)
Add the following code to your website.
For more information on customizing the embed code, read Embedding Snippets.