Probability Distributions and Parameter Estimation
Implements an S4 distribution system and estimation methods for
parameters of common distribution families. The common d, p, q, r function
family for each distribution is enriched with the ll, e, and v counterparts,
computing the log-likelihood, performing estimation, and calculating the
asymptotic variance - covariance matrix, respectively. Parameter estimation
is performed analytically whenever possible.
joker 

Introduction
The joker R package develops an S4 distribution system and performs
parameter estimation in common distribution families, making
well-established and state-of-the-art methods more accessible.
Key Features
- The common d, p, q, r function family for each distribution
(e.g. dnorm, pnorm, qnorm, rnorm) is enriched with
- the ll counterpart (e.g. llnorm) that calculates the log-likelihood,
- the e counterpart (e.g. enorm) that performs parameter estimation,
- the v counterpart (e.g. vnorm) that calculates the asymptotic
variance-covariance matrix of an estimator.
- An S4-class distribution system is developed, allowing the generic
evaluation of the dpqr function family and basic distribution
calculus.
- Moment functions (mean, median, mode, var, sd, skew, kurt) as well
as functions that calculate the entropy and the Fisher Information
are available for all distributions.
- Distributions not included in base R are made available, such as the
Dirichlet and the Multivariate Gamma.
- Parameter estimation is performed analytically instead of
numerically for the estimators that can be expressed explicitly.
- Numerical optimization of the MLE (whenever required, e.g. the Beta
and Gamma distributions) is performed with computational efficiency,
taking advantage of the score equation system to reduce the
dimensionality of the optimization. 7 Functions to compute and plot
common estimator metrics (bias, variance, and RMSE) are included in
the package to allow the convenient study and comparison of the
estimators.
Installation
You can install the release version of joker from CRAN by running the
following line of code:
install.packages("joker")
You can install the development version of joker from github by
running the following line of code:
devtools::install_github("thechibo/joker")
More details can be found in the joker Github
repository.
Documentation
Detailed documentation, along with reproducible examples, can be found
in the package vignette vignette(topic = "joker", package = "joker").
Team
The joker package is developed in the Mathematics
Department
of the University of
Athens. The package
maintainer is Ioannis
Oikonomidis,
working under the supervision of Prof. Samis
Trevezas.