Learn R Programming

GMD (version 0.3.3)

gdist: Generalized Distance Matrix Computation

Description

gdist computes and returns the distance matrix computed by using user-defined distance measure.

Usage

gdist(x,method="euclidean",MoreArgs=NULL,diag=FALSE,upper=FALSE)
is.dist(d)

Arguments

x
a numeric matrix, data frame or `dist' object.
method
the distance measure to be used. This can either be one of the methods used in dist (see help("dist", package="stats")) or "correlation", "correlation.of.observations" and "correlation.of.variables". In addition, user-defined distance measure are also allowed, which returns a dist object and should at least have attributes "Size" and "Labels".
MoreArgs
a list of other arguments to be passed to gdist.
diag
logical value indicating whether the diagonal of the distance matrix should be printed by print.dist.
upper
logical value indicating whether the upper triangle of the distance matrix should be printed by print.dist.
d
an R object.

Value

gdist returns an object of `dist'. is.dist returns a logical value whether an object is `dist'.

Details

is.dist tests if its argument is a `dist' object.

The distance (or dissimilarity) function (FUN) can be any distance measure applied to x. For instance, "euclidean", "maximum", "manhattan","canberra", "binary", "minkowski", "correlation.of.variables", "correlation.of.observations" or gmdm. "correlation.of.variables" computes the correlation distance of the variables (the columns); all the other compute the distances between the observations (the rows) of a data matrix.

Examples

Run this code
## load library
require("GMD")
require(cluster)

## compute distance using Euclidean metric (default)
data(ruspini)
x <- gdist(ruspini)

## see a dendrogram result by hierarchical clustering
dev.new(width=12, height=6)
plot(hclust(x),
     main="Cluster Dendrogram of Ruspini data",
     xlab="Observations")

## convert to a distance matrix
m <- as.matrix(x)

## convert from a distance matrix
d <- as.dist(m)
stopifnot(d == x)

## Use correlations between variables "as distance"
data(USJudgeRatings)
dd <- gdist(x=USJudgeRatings,method="correlation.of.variables")
dev.new(width=12, height=6)
plot(hclust(dd),
     main="Cluster Dendrogram of USJudgeRatings data",
     xlab="Variables")

Run the code above in your browser using DataLab