distanceMatrix {ClassDiscovery} | R Documentation |
This function computes and returns the distance matrix determined by using the specified distance metric to compute the distances between the columns fo a data matrix.
distanceMatrix(dataset, metric, ...)
dataset |
A numeric matrix |
metric |
A character string defining the distance metric. This
can be pearson , sqrt pearson , spearman ,
absolute pearson , weird or any of the metrics accepted by the
dist function. At present, the latter function accepts
euclidean , maximum , manhattan , canberra ,
binary , or minkowski . Any initial substring that uniquely
defines one of the metrics will work. |
... |
Additional parameters to be passed on to
dist . |
This function differs from link{dist}
in two ways, both of
which are motivated by common practice in the analysis of microarray
or proteomics data. First, it computes distances between column vectors
instead of between row vectors. In a typical microarray experiment,
the data is organized so the rows represent genes and the columns
represent different biological samples. In many applications,
relations between the biological samples are more interesting than
relationships between genes. Second, distanceMatrix
adds
additional distance metrics based on correlation.
pearson
pearson
distance, which can be computed in terms of the
Pearson correlation coefficient as (1-cor(dataset))/2
.spearman
spearman
metric used the same formula, but
substitutes the Spearman rank correlation for the Pearson
correlation.absolute pearson
absolute pearson
metric used the absolute
correlation coefficient; i.e., (1-abs(cor(dataset)))
.sqrt pearson
sqrt pearson
metric used the square root of the
pearson distance metric; i.e., sqrt(1-cor(dataset))
.weird
weird
metric uses the Euclidean distance between
the vectors of correlation coefficients; i.e., dist(cor(dataset)).
A distance matrix in the form of an object of class dist
, of
the sort returned by the dist
function or the as.dist
function.
It would be good to have a better name for the weird
metric.
Kevin R. Coombes <kcoombes@mdanderson.org>
dd <- matrix(rnorm(100*5, rnorm(100)), nrow=100, ncol=5) distanceMatrix(dd, 'pearson') distanceMatrix(dd, 'euclid') distanceMatrix(dd, 'sqrt') distanceMatrix(dd, 'weird') rm(dd) # cleanup