| 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)
pdcov.test(x, y, z, R=R)
print(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))
}