View source: R/utils-aic-triangular.R
util_triangular_aic | R Documentation |
This function estimates the parameters of a triangular distribution (min, max, and mode) from the provided data and calculates the AIC value based on the fitted distribution.
util_triangular_aic(.x)
.x |
A numeric vector containing the data to be fitted to a triangular distribution. |
This function calculates the Akaike Information Criterion (AIC) for a triangular distribution fitted to the provided data.
The function operates in several steps:
Parameter Estimation: The function extracts the minimum, maximum, and
mode values from the data via the TidyDensity::util_triangular_param_estimate
function. It returns these initial parameters as the starting point for
optimization.
Negative Log-Likelihood Calculation: A custom function calculates the
negative log-likelihood using the EnvStats::dtri
function to obtain density
values for each data point. The densities are logged manually to simulate the
behavior of a log
parameter.
Parameter Validation: During optimization, the function checks that the
constraints min <= mode <= max
are met, and returns an infinite loss if not.
Optimization: The optimization process utilizes the "SANN" (Simulated Annealing) method to minimize the negative log-likelihood and find optimal parameter values.
AIC Calculation: The Akaike Information Criterion (AIC) is calculated using the optimized negative log-likelihood and the total number of parameters (3).
The AIC value calculated based on the fitted triangular distribution to the provided data.
Steven P. Sanderson II, MPH
Other Utility:
check_duplicate_rows()
,
convert_to_ts()
,
quantile_normalize()
,
tidy_mcmc_sampling()
,
util_beta_aic()
,
util_binomial_aic()
,
util_cauchy_aic()
,
util_chisq_aic()
,
util_exponential_aic()
,
util_f_aic()
,
util_gamma_aic()
,
util_generalized_beta_aic()
,
util_generalized_pareto_aic()
,
util_geometric_aic()
,
util_hypergeometric_aic()
,
util_inverse_burr_aic()
,
util_inverse_pareto_aic()
,
util_inverse_weibull_aic()
,
util_logistic_aic()
,
util_lognormal_aic()
,
util_negative_binomial_aic()
,
util_normal_aic()
,
util_paralogistic_aic()
,
util_pareto1_aic()
,
util_pareto_aic()
,
util_poisson_aic()
,
util_t_aic()
,
util_uniform_aic()
,
util_weibull_aic()
,
util_zero_truncated_binomial_aic()
,
util_zero_truncated_geometric_aic()
,
util_zero_truncated_negative_binomial_aic()
,
util_zero_truncated_poisson_aic()
# Example: Calculate AIC for a sample dataset
set.seed(123)
data <- tidy_triangular(.min = 0, .max = 1, .mode = 1/2)$y
util_triangular_aic(data)
Add the following code to your website.
For more information on customizing the embed code, read Embedding Snippets.