## Distance Matrix Computation

## Usage

    dist(x, method = "euclidian", diag = FALSE, upper=FALSE)

    print.dist(dist.obj, diag = NULL, upper = NULL)
    as.matrix.dist(dist.obj)

## Arguments

`x` | a matrix or (data frame). Distances between the rows of `x` will be computed.
`method` | the distance measure to be used. This must be one of `"euclidian"`, `"maximum"`, `"manhattan"`, `"canberra"` or `"binary"`. Any unambiguous substring can be given.
`diag` | a logical value indicating whether the diagonal of the distance matrix should be printed by `print.dist`.
`upper` | a logical value indicating whether the upper triangle of the distance matrix should be be printed by `print.dist`.

## Description

This function computes and returns the distance matrix computed by using the specified distance measure to compute the distances between the rows of `x`.

Available distance measures are (written for two vectors x and y):

- Euclidean: Usual square distance between the two vectors (2 norm).
- Maximum: Maximum distance between two components of x and y (supremum norm)
- Manhattan: Absolute distance between the two vectors (1 norm).
- Canberra: sum(|x_i - y_i| / |x_i + y_i|)
- Count the number of different bits in x and y where at least one of the two bits is 1, i.e., components where both bits are zero are ignored.

## Value

The lower triangle of the distance matrix stored by columns in a single vector. The vector has the attributes `"Size"`, `"Diag"`, `"Upper"`, `"Labels"` and `"class"` equal to `"dist"`.

## References

Mardia, K. V., J. T. Kent and J. M. Bibby (1979). Multivariate Analysis, London: Academic Press.

## See Also

`hclust`.

## Examples

    x<-matrix(rnorm(100),nrow=5)
    dist(x)
    dist(x, diag = TRUE)
    dist(x, upper = TRUE)
    as.matrix(dist(x))

[Package Contents]