This function computes Mantel's permutation test for similarity of two
matrices. It permutes the rows and columns of the second matrix
randomly and calculates a
mantel.test(m1, m2, nperm = 999, graph = FALSE,
alternative = "two.sided", ...)
the
the alternative hypothesis.
a numeric matrix giving a measure of pairwise distances, correlations, or similarities among observations.
a second numeric matrix giving another measure of pairwise distances, correlations, or similarities among observations.
the number of times to permute the data.
a logical indicating whether to produce a summary graph (by default the graph is not plotted).
a character string defining the alternative
hypothesis: "two.sided"
(default), "less"
,
"greater"
, or any unambiguous abbreviation of these.
further arguments to be passed to plot()
(to add a
title, change the axis labels, and so on).
Original code in S by Ben Bolker, ported to R by Julien Claude
The function calculates a
The present implementation can analyse symmetric as well as (since version 5.1 of ape) asymmetric matrices (see Mantel 1967, Sects. 4 and 5). The diagonals of both matrices are ignored.
If graph = TRUE
, the functions plots the density estimate of
the permutation distribution along with the observed
The ...
argument allows the user to give further options to
the plot
function: the title main be changed with main=
,
the axis labels with xlab =
, and ylab =
, and so on.
Mantel, N. (1967) The detection of disease clustering and a generalized regression approach. Cancer Research, 27, 209--220.
Manly, B. F. J. (1986) Multivariate statistical methods: a primer. London: Chapman & Hall.
q1 <- matrix(runif(36), nrow = 6)
q2 <- matrix(runif(36), nrow = 6)
diag(q1) <- diag(q2) <- 0
mantel.test(q1, q2, graph = TRUE,
main = "Mantel test: a random example with 6 X 6 matrices
representing asymmetric relationships",
xlab = "z-statistic", ylab = "Density",
sub = "The vertical line shows the observed z-statistic")
Run the code above in your browser using DataLab