pdcor {energy} | R Documentation |
Partial distance correlation pdcor, pdcov, and tests.
pdcov.test(x, y, z, R)
pdcor.test(x, y, z, R)
pdcor(x, y, z)
pdcov(x, y, z)
x |
data matrix or dist object of first sample |
y |
data matrix or dist object of second sample |
z |
data matrix or dist object of third sample |
R |
replicates for permutation test |
pdcor(x, y, z)
and pdcov(x, y, z)
compute the partial distance
correlation and partial distance covariance, respectively,
of x and y removing z.
A test for zero partial distance correlation (or zero partial distance covariance) is implemented in pdcor.test
, and pdcov.test
.
If the argument is a matrix, it is treated as a data matrix and distances are computed (observations in rows). If the arguments are distances or dissimilarities, they must be distance (dist
) objects. For symmetric, zero-diagonal dissimilarity matrices, use as.dist
to convert to a dist
object.
Each test returns an object of class htest
.
Maria L. Rizzo mrizzo@bgsu.edu and Gabor J. Szekely
Szekely, G.J. and Rizzo, M.L. (2014), Partial Distance Correlation with Methods for Dissimilarities. Annals of Statistics, Vol. 42 No. 6, 2382-2412.
n = 30
R <- 199
## mutually independent standard normal vectors
x <- rnorm(n)
y <- rnorm(n)
z <- rnorm(n)
pdcor(x, y, z)
pdcov(x, y, z)
set.seed(1)
pdcov.test(x, y, z, R=R)
set.seed(1)
pdcor.test(x, y, z, R=R)
if (require(MASS)) {
p = 4
mu <- rep(0, p)
Sigma <- diag(p)
## linear dependence
y <- mvrnorm(n, mu, Sigma) + x
print(pdcov.test(x, y, z, R=R))
## non-linear dependence
y <- mvrnorm(n, mu, Sigma) * x
print(pdcov.test(x, y, z, R=R))
}