Asymmetric neighborhood based 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 covariance matrix, which is defined by averaging the between classes covariance matrices in the neighborhoods of the points of the homogeneous class and the projection of the covariance matrix within the homogeneous class.

`ancoord(xd, clvecd, clnum=1, nn=50, method="mcd", countmode=1000, ...)`

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.

nn

integer. Number of points which belong to the neighborhood of each point (including the point itself).

method

one of
"mve", "mcd" or "classical". Covariance matrix used within the
homogeneous class.
"mcd" and "mve" are robust covariance matrices as implemented
in `cov.rob`

. "classical" refers to the classical
covariance matrix.

countmode

optional positive integer. Every `countmode`

algorithm runs `ancoord`

shows a message.

...

no effect

List with the following components

eigenvalues in descending order.

columns are coordinates of projection basis vectors.
New points `x`

can be projected onto the projection basis vectors
by `x %*% units`

projections of `xd`

onto `units`

.

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.

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.

`plotcluster`

for straight forward discriminant plots.
`discrproj`

for alternatives.
`rFace`

for generation of the example data used below.

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