Copulas.jl: A fully Distributions.jl-compliant copula package

Oskar Laverny,Santiago Jimenez
DOI: https://doi.org/10.21105/joss.06189
2024-01-03
Abstract:Copulas are functions that describe dependence structures of random vectors, without describing their univariate marginals. In statistics, the separation is sometimes useful, the quality and/or quantity of available information on these two objects might differ. This separation can be formally stated through Sklar's theorem. Copulas are standard tools in probability and statistics, with a wide range of applications from biostatistics, finance or medicine, to fuzzy logic, global sensitivity and broader analysis. The Julia package \texttt{<a class="link-external link-http" href="http://Copulas.jl" rel="external noopener nofollow">this http URL</a>} brings most standard copula-related features into native Julia: random number generation, density and distribution function evaluations, fitting, construction of multivariate models through Sklar's theorem, and many more related functionalities. Copulas being fundamentally distributions of random vectors, we fully comply with the \texttt{<a class="link-external link-http" href="http://Distributions.jl" rel="external noopener nofollow">this http URL</a>} API, the Julian standard for implementation of random variables and random vectors. This compliance allows interoperability with other packages based on this API such as, e.g., \texttt{<a class="link-external link-http" href="http://Turing.jl" rel="external noopener nofollow">this http URL</a>} and several others.
Computation
What problem does this paper attempt to address?