R: Asymmetric discriminant coordinates

adcoord {fpc} | R Documentation

## Asymmetric discriminant coordinates

### Description

Asymmetric discriminant coordinates as defined in Hennig (2003). Asymmetric discriminant projection means that there are two classes, one of which is treated as the homogeneous class (i.e., it should appear homogeneous and separated in the resulting projection) while the other may be heterogeneous. The principle is to maximize the ratio between the projection of a between classes separation matrix and the projection of the covariance matrix within the homogeneous class.

### Usage

    adcoord(xd, clvecd, clnum=1)

### Arguments

`xd` | the data matrix; a numerical object which can be coerced to a matrix.
`clvecd` | integer vector of class numbers; length must equal `nrow(xd)`.
`clnum` | integer. Number of the homogeneous class.

### Details

The square root of the homogeneous classes covariance matrix is inverted by use of `tdecomp`, which can be expected to give reasonable results for singular within-class covariance matrices.

### Value

List with the following components

`ev` | eigenvalues in descending order.
`units` | columns are coordinates of projection basis vectors. New points `x` can be projected onto the projection basis vectors by `x %*% units`
`proj` | projections of `xd` onto `units`.

### Author(s)

Christian Hennig c.hennig@ucl.ac.uk http://www.homepages.ucl.ac.uk/~ucakche/

### References

Hennig, C. (2004) Asymmetric linear dimension reduction for classification. Journal of Computational and Graphical Statistics 13, 930-945 .

Hennig, C. (2005) A method for visual cluster validation. In: Weihs, C. and Gaul, W. (eds.): Classification - The Ubiquitous Challenge. Springer, Heidelberg 2005, 153-160.

### See Also

`plotcluster` for straight forward discriminant plots. `discrproj` for alternatives. `rFace` for generation of the example data used below.

### Examples

      set.seed(4634)
      face <- rFace(600,dMoNo=2,dNoEy=0)
      grface <- as.integer(attr(face,"grouping"))
      adcf <- adcoord(face,grface==2)
      adcf2 <- adcoord(face,grface==4)
      plot(adcf$proj,col=1+(grface==2))
      plot(adcf2$proj,col=1+(grface==4))
      # ...done in one step by function plotcluster.

[Package fpc version 2.1-10 Index]