This function computes the Kendall's tau correlation coefficient for a bivariate functional dataset, with either a max or area-under-curve order order relation between univariate functional elements (components).
cor_kendall(mfD, ordering = "max")
a bivariate functional dataset whose Kendall's tau
coefficient must be computed, in form of bivariate
the ordering relation to use on functional observations,
Given a bivariate functional dataset, with first components X_1(t), X_2(t), …, X_N(t) and second components Y_1(t), Y_2(t), …, Y_N(t), the function exploits either the order relation based on the maxima or the area-under-curve relation to compare data and produce concordances and discordances, that are then used to compute the tau coefficient.
See the references for more details.
The function returns the Kendall's tau correlation coefficient for
the bivariate dataset provided with
Valencia, D., Romo, J. and Lillo, R. (2015). A Kendall correlation
coefficient for functional dependence,
Universidad Carlos III de Madrid technical report,
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37
#### TOTALLY INDEPENDENT COMPONENTS N = 2e2 P = 1e3 grid = seq( 0, 1, length.out = P ) # Creating an exponential covariance function to simulate guassian data Cov = exp_cov_function( grid, alpha = 0.3, beta = 0.4 ) # Simulating (independent) gaussian functional data with given center and # covariance function Data_1 = generate_gauss_fdata( N, centerline = sin( 2 * pi * grid ), Cov = Cov ) Data_2 = generate_gauss_fdata( N, centerline = sin( 2 * pi * grid ), Cov = Cov ) # Using the simulated data as (independent) components of a bivariate functional # dataset mfD = mfData( grid, list( Data_1, Data_2 ) ) # Correlation approx. zero (components were created independently) cor_kendall( mfD, ordering = 'max' ) # Correlation approx. zero (components were created independently) cor_kendall( mfD, ordering = 'area' ) #### TOTALLY DEPENDENT COMPONENTS # Nonlinear transform of first component Data_3 = t( apply( Data_1, 1, exp ) ) # Creating bivariate dataset starting from nonlinearly-dependent components mfD = mfData( grid, list( Data_1, Data_3 ) ) # Correlation very high (components are nonlinearly dependent) cor_kendall( mfD, ordering = 'max' ) # Correlation very high (components are nonlinearly dependent) cor_kendall( mfD, ordering = 'area' )