BUG FIXES
fix log-derivatives of 90 and 270 degree rotations.
Fix missing BB8
in
BiCopName()
.
Comply with upcoming STRICT_R_HEADERS=1
requirements
(use R_
forms for C-memory management, POSIX
M_PI
).
NEW FEATURES
EmpCDF()
function for the tail corrected empirical
CDF.BUG FIXES
better sanity checks for family argument.
fix C-loop in BiCopGofTest()
.
fix NA handling in pobs()
.
BUG FIXES
explicitly export method dim.RVineMatrix()
.
adapt RVineMLE()
to tighter parameter bounds
introduced in previous versions.
BUG FIXES
Fix inversion of Kendall’s tau for Frank copula (#78, #79, thanks to @oezgesahin).
Increased precision in boundary of unit cube (#77).
BUG FIXES
Improved numeric stability by more conservative parameter bounds (#74, thanks to @oezgesahin).
Removed all calls to closeAllConnections()
.
DEPENDS
CDVine
from Suggests.NEW FEATURES
RVineSim
optionally accepts a length-N
list of RVineMatrix
models that must share the same
structure, but can differ in in family/parameters (#69, #70). In that
case, simulation is vectorized and each draw corresponds to a model
specification from the list. Thanks @notEvil.BUG FIXES
fixed bug when excluding models from the family set by specifying a negative family index.
throw appropriate error when treecrit
function is
misspecified.
fix gcc11 error caused by (redundant) printError()
in C-code.
DEPENDENCIES
removed dependencies to packages doParallel and foreach (#67).
moved packages kdecopula and network to Suggests
.
They need to be installed manually for BiCopKDE()
and
plot.RVineMatrix()
to work (#67).
removed dependency to package copula. All functionality extending copula will be provided by the VC2copula package: https://github.com/tnagler/VC2copula (#67).
BUG FIXES
stricter upper bound for Gumbel parameters to avoid numerical issues.
fix bug in BiCopEst()
when the parameter is slightly
beyond parameter bounds (#64, thanks to @notEvil).
NEW FEATURES
presel
and weights
arguments to
RVineStructureSelect
and RVineCopSelect()
(#59
by @tvatter).BUG FIXES
fix variance in RVineVuongTest()
.
fix pre-selection logic in BiCopSelect()
when only
one family is compatible.
fix length(condition) > 1
errors.
BUG FIXES
BiCopHfuncDeriv(2)
(non-critical).BUG FIXES
get rid of warning messages when checking whether structure is a D-vine.
fix standard errors for one-parameter families.
avoid infinite loop for Joe’s inverse h-function with extreme parameter values.
fix parameters bounds for BB copulas in
RVineMLE()
.
BUG FIXES
fix rotation handling in derivative calculations.
fix check for whether a structure is a D-vine.
fixed typos in API documentation.
NEW FEATURES
BUG FIXES
fix calculation of Kendall’s tau when joint ties are present.
fix missing pair.AIC/BIC
in
RVineSeqEst()
.
improved starting parameter for Joe copula MLE.
NEW FEATURES
All C-headers are now located in
inst/include/VineCopula
(#48).
Most C routines are registered as C-callable (#47).
BUG FIXES
RVineMLE
can now safely called with only
independence copulas (#49).
Fixed fix (non-critical) memory-access bug.
NEW FEATURES
summary.RVineMatrix()
invisibly returns a
data.frame
containg most of what is printed as
output.
Less restrictive conditions on what is considered an appropriate
treecrit
function in RVineStructureSelect()
(thanks to Thibault Vatter, #40).
New option verbose
in RVinePDF()
(thanks to @cag51,
#36).
BUG FIXES
Fix parameter bounds in RVineMLE()
corresponding to
updated requirements in BiCop
-functions.
Adapt to re-naming of tailIndex
to
lambda
in the copula package (thanks to Benedikt Graeler,
#41, #42).
Fix bug in detecting C-vine copulas for
summary/print.RVineMatrix()
(#38).
NEW FEATURES
Online API documentation on https://tnagler.github.io/VineCopula/.
Faster BiCopCDF()
.
BUG FIXES
Fixed bug in preprocessing of weights
argument.
More informative error message when family is unknown.
Safer BiCopSelect()
with presel = TRUE
and insufficient data.
Fixed RVineMatrix()
(output dimension was
d-1
and naturalOrder = TRUE
wasn’t working,
thanks @tvatter).
Safer BiCopEst()
for
method = "itau"
.
IMPORTS
copula (>= 0.999-16)
. The new
version of copula requires VineCopula to be re-installed, because the
old fitCopula()
method doesn’t work any longer, but was
re-exported by VineCopula.NEW FEATURES
LinkingTo
field.DEPENDS
R (>= 3.1.0)
. So far, this
dependence was implicit trhough our dependence on the copula
package.NEW FEATURES
All estimation functions now have a method
argument.
The default is method = "mle"
and corresponds to the old
behavior. The other option, method = "itau"
, estimates the
parameters by inversion of Kendall’s. It is much faster than
method = "mle"
, but is only available for one-parameter
families and the t-copula. Big thanks to Thibault Vatter who did most of
the work (PR #25).
New function RVineMatrixSample
that randomly
generates valid R-vine matrices using the algorithm of Joe et
al. (2011). Contributed by Thibault Vatter (PR #27).
Faster versions of RVineMatrix
and
RVineCopSelect
, and RVineStructureSelect
by
avoiding unnecessary computations (thanks to Thibault Vatter, PRs #29
and #31).
All -Select
functions now have a presel
argument. If TRUE
(default) the familyset is reduced to
families that have asymmetry charactistics that conform with the
observed data.
RVineSim
, RVineLogLik
, and
RVinePDF
have been implemented in a way that demands less
memory. For RVineLogLik
, the option
calculate.V
has to be set to TRUE
.
BUG FIXES
Fixed bug in upper tail dependence coefficient for survival BB1 (reported by Viviana Fernandez, thanks!).
RVineStructureSelect
now works in dimension two as
well.
RVineMatrixCheck
returns the new error code
-4
when the matrix is neither lower nor upper triangular
(threw an actual error before).
contour.RVineMatrix
now arranges the contour matrix
conforming with the family and parameter matrices.
DEPENDS
BUG FIXES
Use se = FALSE
as default throughout the package for
faster estimation.
Fixed errors in BiCopGofTest
for the Student t
copula and par2
close to 2 and for most other families for
tau
close to 0 (reported by Thong Huy Nguyen,
thanks!).
Fix sign in starting parameters for Tawn MLE.
Fixed storage positions of par2
in output matrix of
RVineMLE
(reported by Robin Evans, thanks!).
NEW FEATURES
contour.RVineMAtrix
.BUG FIXES
Return scalar instead of 1-dim array in tau <-> par conversion.
Fix vectorized call of BiCopCDF
.
Negative selection of families is now working properly.
Correct logLik calculation in output of
RVineMLE
.
Dependence measures are updated in output of
RVineCor2pcor
.
Fix bug in annotation of edges with Kendall’s when using
plot.RVineMatrix
.
BUG FIXES
MAINTAINER
DEPENDS
igraph has been removed from Imports
.
network has been added to Imports
.
NEW FEATURES
All functions in the package can now handle NAs in the data. A warning message indicates presence of NAs and explains how they are treated.
Extend BiCop
and RVineMatrix
objects
(now include: associated dependence measures; fit statistics and
p-values, if available).
New methods print
and summary
for
objects of class BiCop
and
RVineMatrix
.
New plotting generics:
plot.RVineMatrix
for plotting vine trees,
contour.RVineMatrix
for a matrix of contour
plots,
contour.BiCop
as short hand for
plot.BiCop(..., type = "contour")
.
Vectorize BiCopXyz
-functions w.r.t.
family
, par
, par2
:
in C: BiCopPDF
, BiCopHfunc
,
BiCopHinv
, BiCopDeriv
,
BiCopDeriv2
, BiCopHfuncDeriv
,
BiCopHfuncDeriv2
.
in R: BiCopCDF
, BiCopPar2Tau
,
BiCopPar2Beta
, BiCopPar2TailDep
.
Etimation of vine copulas (RVineStructureSelect
,
RVineCopSelect
, RVineSeqEst
) can now be done
in parallel using the cores
argument (based on
foreach
) and is more memory efficient (pseudo-observations
are discarded as soon they are useless).
RVineStructureSelect
now takes an argument
treecrit
allowing for several preimplemented (and custom)
choices of the edge weight used in Dissmann’s algorithm.
Treatment of familyset
in the -Select functions:
independence copula is handled as a regular family,
negative integers can be used to select from all but a subset of families.
New function BiCopCompare
: A shiny app where the
user can visually assess how well several families fit the
data.
New function BiCopKDE
for kernel density plots
(based on kdecopula package).
New function BiCopCondSim
for conditional simulation
from a bivariate copula.
New function BiCopHinv
for computation of inverse
h-functions.
New functions BiCopHfunc1
, BiCopHfunc2
,
BiCopHinv1
, and BiCopHinv2
that only compute
one of the two h-functions (or inverse h-functions).
New function BiCopCheck
for checking of
family/parameter consistency.
Add check.pars
/check.taus
argument to
the above functions for the option to omit family/parameter consistency
checks (for internal usage). When FALSE
, the Clayton and
Frank copulas can be used with par = 0
.
Faster implementations of
BiCopPar2Tau
/BiCopTau2Par
for Frank copula and
BiCopTau2Par
conversion for Joe copula.
BUG FIXES
Correct call for non-t families in
BiCopHfuncDeriv2(..., deriv = "par1u2")
.
The S4-class objets of the Tawn copulas pointed to Archimedean CDFs, now corrected to true CDFs based on C-code.
TauMatrix
: restriction for input data to be in [0,1]
removed.
RVineCopSelect
: no printing of family
matrix.
Added methods for Pickand’s dependence function “A” for
tawnT1Copula
, surTawnT1Copula
,
tawnT2Copula
and surTawnT2Copula
.
Use C-code instead of R-code and remove redundant C-code of Tawn copulas.
Small bug fix in log-likelihood for families 3, 4, 7, 17.
Increased upper limit for uniroot in
Joe.itau.JJ
.
Fixed rotations of Tawns (they were actually reflection w.r.t. the axes u = 0.5 and u2 = 0.5)
Correct calculation of the goodness-of-fit test based on Whites
Information matrix test for bivariate copulas
BiCopGofTest(..., method = "white")
. The variance matrix
needed for the test statistic had a poor approximation. Thereby the
asymptotic p-values are corrected.
Bound parameter ranges for Archimedean copulas to avoid numerical instabilities in -PDF and -Sim functions.
DEPENDS:
BUG FIXES:
NEW FEATURES
RVineTreePlot
: option for a legend (and numbered nodes
and edges).BUG FIXES
Definition of “C” in BiCopCDF for tawn copulas used constants
u1
and u2
instead of arguments u
and v
.
RVineStructureSelect
: Adjust to new version of
igraph. Tree structure was not selected correctly. igraph function names
changed to the names used in the new version. Some small modifications
to avoid some for loops and make the code easier to read.
IMPORTS
Extend Imports to avoid undefined globals (CRAN E-mail 02.07.2015).
New version requires igraph (>= 1.0.0)
.
NEW FEATURES
as.copuladata
: coerce to class
copuladata
.
pairs.copuladata
: pairs
plots for
objects of class copuladata
.
RVinePDF
: PDF of an R-Vine Copula Model.
BiCopSelect
, RVineCopSelect
,
RVineStructureSelect
: add option
rotations = TRUE
which augments the familyset with all
rotations to a given family.
RVineMatrix
, RVineStructureSelect
:
allow upper triangular matrices as input (output remains lower
triangular).
BiCop
objects for bivariate copulas:
add constructor BiCop
and plotting generic
plot.BiCop
.
define results of BiCopEst
/BiCopSelect
as BiCop
objects.
add compatibility with other BiCopXyz
functions
(BiCopPDF
, BiCopPar2Tau
, etc.).
BUG FIXES
BiCopEst
: extend search interval for Tawn MLE to
avoid optim
-errors.
BiCopEst
: fix for optim error (‘non-finite value
supplied’).
RVineSim
: reorder U
so that it
corresponds to the order of RVM
.
RVineCor2pcor
: include normalization step for a more
intuitive behavior, bug fix for \(d = 2,
3\) and \(d > 9\).
RVinePcor2cor
: bug fixes for \(d = 2\) and \(d
> 9\).
RVineCopSelect
: RVM
object now uses
variable names as provided by data.
NEW FEATURES
BiCopTau2Par
and BiCopPar2Tau
: fully
vectorized (parameter/tau input), and sanity checks extended. Before
vector input was not prohibited. However, both functions were not
intended to be used for vectorized input.NEW AUTHOR
NEW FEATURES
BUG FIXES
RVineStructureSelect
: Bug concerning the dimensions
of input data/security queries fixed (Reported by Sarka Cerna, Radek
Solnicky and Ludovic Theate. Thanks a lot!)
RVineStructureSelect
: Correct handling of rotated
BBs and Tawns.
BiCopSelect
, BiCopEst
: Improved
starting values for Tawn MLE.
hfunc.c
:
Correct Hfunc1
for Tawns.
Bound all results to lie in [0,1] (Hfunc1
and
Hfunc2
)
Extension of Hinv1
and Hinv2
in analogy
to Hfunc1
and Hfunc2
.
incompleteBeta.c
: Misuse of the C function abs (as
reported by CRAN) corrected to fabs
.
gof_PIT.R
: Use of require()
replaced by
requireNamespace
according to ‘Writing R
Extensions’.
Package ADGofTest
removed from Suggests
(see ‘Writing R Extensions’ for usage of Suggests).
Import of function ad.test
from
ADGofTest
for gof_PIT.R
.
BUG FIXES
Bootstrap procedure for the White test
(RVineGofTest
, gof_White
) was incorrect.
(Reported by Piotr Zuraniewski and Daniel Worm. Thanks!)
Bootstrap procedure for the PIT based and the ECP based test were incorrect. First, C starts to count at 0 not 1. This could result in zero entries in the bootstrapped data matrix. Second, forget to permute vdirect and vindirect according to the permutation of data.
BiCopSelect
: For the rotated BB7 and BB8
(family = 37, 38
) the limiting cases were incorrect for
very small parameters (copy&paste error). (Reported by Radek
Solnicky. Thanks!)
MAINTAINER
NEW FEATURES
IMPORTS
Depends
to the more appropriate
Import
field.NEW FEATURES
RVineSim
allows to commit a
(N x d)
-matrix of \(U[0,1]\) random variates to be transformed
to the copula sample. For example if you want to use quasi random
variables instead of the pseudo random variables implemented in R.
(Thanks to Marius Hofert)
The package now contains class wrappers that are compatible with
the copula
class from the copula
R-package.
These include all bivariate families currently implemented: The class
representation for different rotated families of e.g the BB6 family are
represented as BB6Copula
, r90B6Copula
,
surBB6Copula
and r270BB6Copula
. These
bivariate classes are fully compatible with the standard copula methods
such as dCopula
, pCopula
, rCopula
or fitCopula
including persp
and
contour
. A vine copula can as well be coerced into a class
representation of vineCopula
. However, the support of the
standard methods is limited. See the corresponding help pages for
details. Earlier introduced R-wrapper of C-functions have been removed,
as they are no longer needed by the spcopula
R-package.
Added parameter verbose
to RVineLogLik
to allow to suppress some debug output.
BUG FIXES
RVineMLE
: the optim
argument
parscale
was not correctly defined for all cases.
RVineAIC
/RVineBIC
: Instead of the
function arguments par
and par2
the
calculation was based on RVM$par
and RVM$par2
.
This is corrected now. (reported by Marcel Duellmann; thanks)
RVineStructureSelect
: The new igraph version
returned a different variable type causing an error in the second and
higher order tree selection.
NEW FEATURES
RVinePIT
: calculation of the probability integral
transform (PIT) for R-vines.
RVineGofTest
: 15 different goodness-of-fit tests for
R-vine copulas (Schepsmeier 2013).
print.RVM
: A more detailed summary is printed if
print(RVM, detail = TRUE)
is set.
BetaMatrix
: Matrix of empirical Blomqvist’s beta
values.
BiCopPar2Beta
: Blomqvist’s beta value of a bivariate
copula.
RVinePar2Beta
: Blomqvist’s beta values of an R-vine
copula model.
RVineCor2pcor
: correlations to partial correlations
for R-vines.
RVinePcor2cor
: partial correlations to correlations
for R-vines.
New copula families for most of the BiCop as well as for the
RVine
-functions:
As an asymmetric extension of the Gumbel copula, the Tawn copula with three parameters is now also included in the package. Both the Gumbel and the Tawn copula are extreme-value copulas, which can be defined in terms of their corresponding Pickands dependence functions.
For simplicity, we implemented two versions of the Tawn copula with two parameters each. Each type has one of the asymmetry parameters fixed to 1, so that the corresponding Pickands dependence is either left- or right-skewed. In the manual we will call these two new copulas “Tawn type 1” and “Tawn type 2”.
The families 104
, 114
,
124
, 134
denote the Tawn copula and their
rotated versions in the case of left skewness (Tawn type 1).
The families 204
, 214
,
224
, 234
denote the Tawn copula and their
rotated versions in the case of right skewness (Tawn type 2).
BUG FIXES
BiCopPar2Tau
: corrected calculation of Kendall’s tau
of rotated BB7. (Reported by Giampiero Marra. Thanks!)
RVineStructureSelect
: Corrected code for the igraph
package.
RVineTreePlot
: Now a 3-dimensional R-vine can be
plotted too.
Corrected upper tail dependence coefficient for the survival BB1
copula (BiCopPar2TailDep
).
Minor improvement in BiCopSelect
regarding the
starting values for parameter estimation.
DOCUMENTAION
NEW AUTHOR
NEW FEATURES
Changed dependency from igraph0 to igraph since the support for igraph0 will be quit soon.
Additional validity check of the R-vine matrix in
RVineMatrix
(Code provided by Harry Joe). Also available as
separate function RVineMatrixCheck
.
New bivariate copula: Reflection asymmetric Archimedean copula.
In our functions it is family = 41, 51, 61, 71
( with
rotated versions). So far only implemented in some bivariate functions
(not documented so far; experimental).
BUG FIXES
New (correct) examples for the Clarke and Vuong test.
Fixed memory problem in the C-function ktau
(TauMatrix
).
BUG FIXES
NEW FEATURES
BiCopGofTest
: Goodness-of-fit test for bivariate
copulas based on White’s information matrix equality as introduced by
Wanling and Prokhorov (2011). The formally included function
BiCopGofKendall
is now part of BiCopGofTest
(method = "kendall"
).
Additional edge label pair
in
RVineTreePlot
to display the indices of the (conditioned)
pairs of variables identified by the edges.
In RVineStructureSelect
and
RVineCopSelect
a truncation level can be set.
Improved inverse h-functions for the Gumbel and Joe copulas (thanks to Harry Joe).
C to R wrapping functions for the h-functions
(Hfunc1
, Hfunc2
), the bivariate log-likelihood
function (LL_mod_seperate
), the bivariate Archimedean
copula CDF (archCDF
) and the simulation function for C- and
D-vines (pcc
) (request of Benedikt Graeler for the
R-package spcopula
).
The functions R2CVine and R2Dine were removed, since they were only correct in special cases.
BUG FIXES
Work around for a problem with optim
and the
analytical gradient in BiCopEst
.
Improvement of the bivariate maximum likelihood estimation
(BiCopEst
).
In the functions BiCopCDF
and
BiCopGoFTest(..., method = "Kendall")
the t-copula is not
implemented any more. The calculation of the CDF was incorrect for
non-integer values of the degrees-of-freedom parameter. The implemented
algorithm in the mvtnorm
package only works for integer
values of the degrees-of-freedom parameter.
Improvement in the calculation of the cdf of the Frank copula
(BiCopCDF
).