pcoscaled {ade4}R Documentation

Simplified Analysis in Principal Coordinates

Description

performs a simplified analysis in principal coordinates, using an object of class dist.

Usage

pcoscaled(distmat, tol = 1e-07)

Arguments

distmat an object of class dist
tol a tolerance threshold, an eigenvalue is considered as positive if it is larger than -tol*lambda1 where lambda1 is the largest eigenvalue

Value

returns a data frame containing the Euclidean representation of the distance matrix with a total inertia equal to 1

Author(s)

Daniel Chessel

References

Gower, J. C. (1966) Some distance properties of latent root and vector methods used in multivariate analysis. Biometrika, 53, 325–338.

Examples

    a <- 1 / sqrt(3) - 0.2
    w <- matrix(c(0,0.8,0.8,a,0.8,0,0.8,a,
        0.8,0.8,0,a,a,a,a,0),4,4)
    w <- as.dist(w)
    w <- cailliez(w)
    w
    pcoscaled(w)
    dist(pcoscaled(w)) # w
    dist(pcoscaled(2 * w)) # the same
    sum(pcoscaled(w)^2) # unity

Worked out examples


> library(ade4)
> ### Name: pcoscaled
> ### Title: Simplified Analysis in Principal Coordinates
> ### Aliases: pcoscaled
> ### Keywords: array
> 
> ### ** Examples
> 
>     a <- 1 / sqrt(3) - 0.2
>     w <- matrix(c(0,0.8,0.8,a,0.8,0,0.8,a,
+         0.8,0.8,0,a,a,a,a,0),4,4)
>     w <- as.dist(w)
>     w <- cailliez(w)
>     w
          1         2         3
2 1.0000000                    
3 1.0000000 1.0000000          
4 0.5773503 0.5773503 0.5773503
>     pcoscaled(w)
          C1 C2
1  1.1547005  0
2 -0.5773503 -1
3 -0.5773503  1
4  0.0000000  0
>     dist(pcoscaled(w)) # w
         1        2        3
2 2.000000                  
3 2.000000 2.000000         
4 1.154701 1.154701 1.154701
>     dist(pcoscaled(2 * w)) # the same
         1        2        3
2 2.000000                  
3 2.000000 2.000000         
4 1.154701 1.154701 1.154701
>     sum(pcoscaled(w)^2) # unity
[1] 4
> 
> 
> 
> 

[Package ade4 Index]