NEW FEATURES
- add
RVineCDF()
function for cumulative distribution of vine copulas models (#97).
BUG FIXES
-
fix log-derivatives of 90 and 270 degree rotations.
-
Fix missing
BB8
inBiCopName()
. -
Comply with upcoming
STRICT_R_HEADERS=1
requirements (useR_
forms for C-memory management, POSIXM_PI
).
NEW FEATURES
- add
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
- Removed archived package
CDVine
from Suggests.
NEW FEATURES
RVineSim
optionally accepts a length-N
list ofRVineMatrix
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 forBiCopKDE()
andplot.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
- add
presel
andweights
arguments toRVineStructureSelect
andRVineCopSelect()
(#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
- prevent heap-buffer overflows in
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
- no family restrictions for RVinePIT.
BUG FIXES
-
fix calculation of Kendall's tau when joint ties are present.
-
fix missing
pair.AIC/BIC
inRVineSeqEst()
. -
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 adata.frame
containg most of what is printed as output. -
Less restrictive conditions on what is considered an appropriate
treecrit
function inRVineStructureSelect()
(thanks to Thibault Vatter, #40). -
New option
verbose
inRVinePDF()
(thanks to @cag51, #36).
BUG FIXES
-
Fix parameter bounds in
RVineMLE()
corresponding to updated requirements inBiCop
-functions. -
Adapt to re-naming of
tailIndex
tolambda
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()
withpresel = TRUE
and insufficient data. -
Fixed
RVineMatrix()
(output dimension wasd-1
andnaturalOrder = TRUE
wasn't working, thanks @tvatter). -
Safer
BiCopEst()
formethod = "itau"
.
IMPORTS
- Package now requires
copula (>= 0.999-16)
. The new version of copula requires VineCopula to be re-installed, because the oldfitCopula()
method doesn't work any longer, but was re-exported by VineCopula.
NEW FEATURES
- Package developers can use the VineCopula C-functionality by linking against
VineCopula through the
LinkingTo
field.
DEPENDS
- Now depends explicitly on
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 ismethod = "mle"
and corresponds to the old behavior. The other option,method = "itau"
, estimates the parameters by inversion of Kendall's. It is much faster thanmethod = "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
andRVineCopSelect
, andRVineStructureSelect
by avoiding unnecessary computations (thanks to Thibault Vatter, PRs #29 and #31). -
All
-Select
functions now have apresel
argument. IfTRUE
(default) the familyset is reduced to families that have asymmetry charactistics that conform with the observed data. -
RVineSim
,RVineLogLik
, andRVinePDF
have been implemented in a way that demands less memory. ForRVineLogLik
, the optioncalculate.V
has to be set toTRUE
.
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
- Require higher version of the copula package (>= 0.999-15).
BUG FIXES
-
Use
se = FALSE
as default throughout the package for faster estimation. -
Fixed errors in
BiCopGofTest
for the Student t copula andpar2
close to 2 and for most other families fortau
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 ofRVineMLE
(reported by Robin Evans, thanks!).
NEW FEATURES
- Option for kernel contours in
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
- fixed small memory leak (reported by Prof. Ripley, thanks!).
MAINTAINER
- changed from Tobias Erhardt to Thomas Nagler ([email protected]).
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
andRVineMatrix
objects (now include: associated dependence measures; fit statistics and p-values, if available). -
New methods
print
andsummary
for objects of classBiCop
andRVineMatrix
. -
New plotting generics:
-
plot.RVineMatrix
for plotting vine trees, -
contour.RVineMatrix
for a matrix of contour plots, -
contour.BiCop
as short hand forplot.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 thecores
argument (based onforeach
) and is more memory efficient (pseudo-observations are discarded as soon they are useless). -
RVineStructureSelect
now takes an argumenttreecrit
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
, andBiCopHinv2
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). WhenFALSE
, the Clayton and Frank copulas can be used withpar = 0
. -
Faster implementations of
BiCopPar2Tau
/BiCopTau2Par
for Frank copula andBiCopTau2Par
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
andsurTawnT2Copula
. -
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:
- Removed CDVine from Suggests.
BUG FIXES:
- Fix code/documentation mismatch in function 'pobs' following a change in the copula package.
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
andu2
instead of argumentsu
andv
. -
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 classcopuladata
. -
pairs.copuladata
:pairs
plots for objects of classcopuladata
. -
RVinePDF
: PDF of an R-Vine Copula Model. -
BiCopSelect
,RVineCopSelect
,RVineStructureSelect
: add optionrotations = 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 genericplot.BiCop
. -
define results of
BiCopEst
/BiCopSelect
asBiCop
objects. -
add compatibility with other
BiCopXyz
functions (BiCopPDF
,BiCopPar2Tau
, etc.).
BUG FIXES
-
BiCopEst
: extend search interval for Tawn MLE to avoidoptim
-errors. -
BiCopEst
: fix for optim error ('non-finite value supplied'). -
RVineSim
: reorderU
so that it corresponds to the order ofRVM
. -
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
andBiCopPar2Tau
: 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
- Thomas Nagler
NEW FEATURES
- Import/Export of function 'pobs' from 'copula' package.
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
andHfunc2
) -
Extension of
Hinv1
andHinv2
in analogy toHfunc1
andHfunc2
.
-
-
incompleteBeta.c
: Misuse of the C function abs (as reported by CRAN) corrected tofabs
. -
gof_PIT.R
: Use ofrequire()
replaced byrequireNamespace
according to 'Writing R Extensions'. -
Package
ADGofTest
removed fromSuggests
(see 'Writing R Extensions' for usage of Suggests). -
Import of function
ad.test
fromADGofTest
forgof_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
- changed from Ulf Schepsmeier to Tobias Erhardt ([email protected]).
NEW FEATURES
- Added tests generated from example code.
IMPORTS
- Moved copula from
Depends
to the more appropriateImport
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 thecopula
R-package. These include all bivariate families currently implemented: The class representation for different rotated families of e.g the BB6 family are represented asBB6Copula
,r90B6Copula
,surBB6Copula
andr270BB6Copula
. These bivariate classes are fully compatible with the standard copula methods such asdCopula
,pCopula
,rCopula
orfitCopula
includingpersp
andcontour
. A vine copula can as well be coerced into a class representation ofvineCopula
. 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 thespcopula
R-package. -
Added parameter
verbose
toRVineLogLik
to allow to suppress some debug output.
BUG FIXES
-
RVineMLE
: theoptim
argumentparscale
was not correctly defined for all cases. -
RVineAIC
/RVineBIC
: Instead of the function argumentspar
andpar2
the calculation was based onRVM$par
andRVM$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 ifprint(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
- Updated manual files.
NEW AUTHOR
- Benedikt Graeler
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 functionRVineMatrixCheck
. -
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
- Fixed issue with the inverse h-function of the Gumbel copula.
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 functionBiCopGofKendall
is now part ofBiCopGofTest
(method = "kendall"
). -
Additional edge label
pair
inRVineTreePlot
to display the indices of the (conditioned) pairs of variables identified by the edges. -
In
RVineStructureSelect
andRVineCopSelect
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-packagespcopula
). -
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 inBiCopEst
. -
Improvement of the bivariate maximum likelihood estimation (
BiCopEst
). -
In the functions
BiCopCDF
andBiCopGoFTest(..., 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 themvtnorm
package only works for integer values of the degrees-of-freedom parameter. -
Improvement in the calculation of the cdf of the Frank copula (
BiCopCDF
).