Become an expert in R — Interactive courses, Cheat Sheets, certificates and more!
Get Started for Free

euclidify

Nearest Euclidean Space Representation of a Dissimilarity Object


Description

Calculates the nearest Euclidean space representation of a dissimilarity object by iterating the transitive closure of the triangle inequality

Usage

euclidify(dis,upper=FALSE,diag=FALSE)
as.euclidean(dis,upper=FALSE,diag=FALSE)

Arguments

dis

a distance or dissimilarity object returned from dist, vegdist, or dsvdis

upper

a logical switch to control whether to return the lower triangle (upper=FALSE) or upper triangle (upper=TRUE) of the distance matrix

diag

a logical switch to control whether to return the diagonal of the distance matrix

Details

Implements a constrained iteration of the transitive closure of Pythagoras' theorem, such that the squared distance between any two objects is less than or equal to the sum of the squared distances from the two objects to all possible third objects.

Value

An object of class ‘dist’

Note

Many multivariate statistical methods are designed for euclidean spaces, and yet the direct calculation of euclidean distance is often inappropriate due to problems with joint absences. euclidify takes any dissimilarity matrix and converts it to the closest euclidean representation, generally to avoid negative eigenvalues in an eigenanalysis of the matrix.

Author(s)

See Also

Examples

data(bryceveg) # returns a vegetation data.frame
dis.bc <- dsvdis(bryceveg,'bray/curtis') # calculate a Bray/Curtis
                                         # dissimilarity matrix
dis.euc <- euclidify(dis.bc) # calculate the nearest euclidean 
                             # representation 
## Not run: plot(dis.bc,dis.euc)

labdsv

Ordination and Multivariate Analysis for Ecology

v2.0-1
GPL (>= 2)
Authors
David W. Roberts <droberts@montana.edu>
Initial release

We don't support your browser anymore

Please choose more modern alternatives, such as Google Chrome or Mozilla Firefox.