Freedom251 › Statistical Analysis Software
Copulas.jl

What Copulas.jl is
Copulas.jl is a free, MIT-licensed Julia package for modeling dependence structures in real random vectors with copulas. It generates random numbers and evaluates log-density and distribution functions. Its SklarDist type combines copulas with marginal distributions to create multivariate distributions. Fitting tools use explicit candidate families and information criteria for automatic selection, with diagnostics covering covariance, confidence intervals, residuals, and information criteria. Dependence analysis includes metrics, tail coefficients, and resampling-based tests for dependence assumptions and goodness of fit. Copulas and SklarDist models can be conditioned on points or intervals; discrete margins are treated as latent uniform intervals. Rosenblatt and inverse Rosenblatt transforms are available. Plots.jl recipes provide pairwise plots, marginal overlays, and density, log-density, or distribution contours and surfaces. The package follows the Distributions.jl API, supporting compatible Julia packages such as Turing.jl, and offers an optional PartitionedDistributions.jl extension.
Who it suits
It suits Julia users modeling dependence and multivariate distributions with copulas. Users needing Bayesian analysis, scripting, statistical tests, or Julia ecosystem interoperability may find its documented features relevant.
What it does well
- Free plan and MIT license
- Random generation and density evaluation
- Automatic family selection with information criteria
- Dependence metrics and resampling tests
- Distributions.jl API interoperability
What to know first
- Hypothesis tests assume continuous margins
- Sklar fitting is not joint full maximum likelihood
- Implementation performance was not yet prioritized
- Project is described as experimental
Verdict
Copulas.jl provides a broad copula toolkit, including modeling, fitting, diagnostics, conditioning, transforms, and visualization. Its documented limitations around discrete observations, fitting methods, performance priorities, and experimental status matter when selecting it.
Facts from Copulas.jl's own pages
- Additional interoperability
- An optional extension connects Copulas.jl with PartitionedDistributions.jl for marginal and conditional distribution operations. · lrnv.github.io, 12 Oct 2026
- Bayesian analysis
- Yes · lrnv.github.io, 23 Sept 2026
- Compound distributions
- Its SklarDist type constructs multivariate compound distributions from a copula and marginal distributions using Sklar’s theorem. · lrnv.github.io, 12 Oct 2026
- Conditioning
- Copulas and SklarDist models can be conditioned on points or intervals; discrete margins are handled as latent uniform intervals. · lrnv.github.io, 11 Oct 2026
- Core features
- The package supports random number generation, density and distribution function evaluation, fitting, copula based multivariate distributions, and dependence metrics. · lrnv.github.io, 12 Oct 2026
- Dependence analysis
- It provides dependence metrics, tail coefficients, and resampling-based hypothesis tests for dependence assumptions and goodness of fit. · github.com, 11 Oct 2026
- Deployment
- desktop · lrnv.github.io, 23 Sept 2026
- Diagnostics
- CopulaModel fitting supports diagnostics including covariance, confidence intervals, residuals, and information criteria. · github.com, 11 Oct 2026
- Experimental status
- The project’s GitHub README describes the work as fairly experimental and advises using it with caution. · github.com, 12 Oct 2026
- Fit limitation
- The documented Sklar fitting routes use sequential or rank-based methods and are not joint full maximum likelihood. · github.com, 11 Oct 2026
- Fitting and selection
- The package offers fitting procedures and automatic family selection using explicit candidate sets and information criteria. · github.com, 11 Oct 2026
- Free plan
- Yes · lrnv.github.io, 23 Sept 2026
- Installation
- The package is registered in Julia’s General registry and the site gives `] add Copulas` as the installation command. · lrnv.github.io, 12 Oct 2026
- Integration
- Copulas.jl follows the Distributions.jl API, supporting interoperability with packages based on that API such as Turing.jl. · github.com, 11 Oct 2026
- Intended users
- The package is aimed at Julia users modeling dependence structures and multivariate distributions with copulas. · github.com, 11 Oct 2026
- Julia ecosystem
- Copulas.jl follows the Distributions.jl API and the documentation describes interoperability with packages based on that API, including Turing.jl. · lrnv.github.io, 12 Oct 2026
- License
- The GitHub repository lists the package under the MIT license. · github.com, 12 Oct 2026
- Makers
- The package citation names Oskar Laverny and Santiago Jimenez as its authors. · github.com, 12 Oct 2026
- Model coverage
- The feature comparison marks extreme value copulas and Archimax copulas as bivariate only, and Archimedean chains as unavailable in Copulas.jl. · github.com, 12 Oct 2026
- Numeric types
- The project describes its native Julia implementation as compatible with BigFloat, DoubleFloats, and MultiFloats. · lrnv.github.io, 12 Oct 2026
- Performance
- The project says efficiency and performance were not yet considered in its implementation priorities and that benchmarks would come later. · lrnv.github.io, 12 Oct 2026
- Plotting
- The documentation describes Plots.jl recipes for copula and SklarDist visualizations, including pairwise plots and bivariate density, log-density, or distribution contours. · lrnv.github.io, 12 Oct 2026
- Purpose
- Copulas.jl provides models for dependence structures of real random vectors, known as copulas. · lrnv.github.io, 12 Oct 2026
- Sampling and evaluation
- It supports random number generation and evaluation of log-density and distribution functions. · github.com, 11 Oct 2026
Where Copulas.jl stands on Freedom251
- Statistical Analysis Software#77 of 106