KTMatrixEst {ElliptCopulas}R Documentation

Fast estimation of Kendall's tau matrix


Estimate Kendall's tau matrix using averaging estimators. Under the structural assumption that Kendall's tau matrix is block-structured with constant values in each off-diagonal block, this function estimates Kendall's tau matrix “fast”, i.e. in time N n log(n), where N is the amount of pairs that are averaged.


KTMatrixEst(dataMatrix, blockStructure = NULL, averaging = "no")



matrix of size (n,d) containing n observations of a d-dimensional random vector.


list of vectors. Each vector corresponds to one group of variables and contains the indexes of the variables that belongs to this group. blockStructure must be a partition of 1:d, where d is the number of columns in dataMatrix.


type of averaging used for fast estimation. Possible choices are

  • no: no averaging;

  • all: averaging all Kendall's taus in each block. N is then the number of entries in the block, i.e. the products of both dimensions.

  • diag: averaging along diagonal blocks elements. N is then the minimum of the block's dimensions.

  • row: averaging Kendall's tau along the smallest block side. N is then the minimum of the block's dimensions.


matrix with dimensions depending on averaging.


Rutger van der Spek, Alexis Derumigny


# Estimating off-diagonal block Kendall's taus
matrixCov = matrix(c(1  , 0.5, 0.3 ,0.3,
                     0.5,   1, 0.3, 0.3,
                     0.3, 0.3,   1, 0.5,
                     0.3, 0.3, 0.5,   1), ncol = 4 , nrow = 4)
dataMatrix = mvtnorm::rmvnorm(n = 100, mean = rep(0, times = 4), sigma = matrixCov)
blockStructure = list(1:2, 3:4)
KTMatrixEst(dataMatrix = dataMatrix, blockStructure = blockStructure,
            averaging = "all")

[Package ElliptCopulas version 0.1.3 Index]