Learn R Programming

fpc (version 2.2-3)

discrproj: Linear dimension reduction for classification

Description

An interface for ten methods of linear dimension reduction in order to separate the groups optimally in the projected data. Includes classical discriminant coordinates, methods to project differences in mean and covariance structure, asymmetric methods (separation of a homogeneous class from a heterogeneous one), local neighborhood-based methods and methods based on robust covariance matrices.

Usage

discrproj(x, clvecd, method="dc", clnum=NULL, ignorepoints=FALSE,
           ignorenum=0, ...)

Arguments

x

the data matrix; a numerical object which can be coerced to a matrix.

clvecd

vector of class numbers which can be coerced into integers; length must equal nrow(xd).

method

one of

"dc"

usual discriminant coordinates, see discrcoord,

"bc"

Bhattacharyya coordinates, first coordinate showing mean differences, second showing covariance matrix differences, see batcoord,

"vbc"

variance dominated Bhattacharyya coordinates, see batcoord,

"mvdc"

added meana and variance differences optimizing coordinates, see mvdcoord,

"adc"

asymmetric discriminant coordinates, see adcoord,

"awc"

asymmetric discriminant coordinates with weighted observations, see awcoord,

"arc"

asymmetric discriminant coordinates with weighted observations and robust MCD-covariance matrix, see awcoord,

"nc"

neighborhood based coordinates, see ncoord,

"wnc"

neighborhood based coordinates with weighted neighborhoods, see ncoord,

"anc"

asymmetric neighborhood based coordinates, see ancoord.

Note that "bc", "vbc", "adc", "awc", "arc" and "anc" assume that there are only two classes.

clnum

integer. Number of the class which is attempted to plot homogeneously by "asymmetric methods", which are the methods assuming that there are only two classes, as indicated above.

ignorepoints

logical. If TRUE, points with label ignorenum in clvecd are ignored in the computation for method and are only projected afterwards onto the resulting units. If pch=NULL, the plot symbol for these points is "N".

ignorenum

one of the potential values of the components of clvecd. Only has effect if ignorepoints=TRUE, see above.

...

additional parameters passed to the projection methods.

Value

discrproj returns the output of the chosen projection method, which is a list with at least the components ev, units, proj. For detailed informations see the help pages of the projection methods.

ev

eigenvalues in descending order, usually indicating portion of information in the corresponding direction.

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.

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.

Seber, G. A. F. (1984). Multivariate Observations. New York: Wiley.

Fukunaga (1990). Introduction to Statistical Pattern Recognition (2nd ed.). Boston: Academic Press.

See Also

discrcoord, batcoord, mvdcoord, adcoord, awcoord, ncoord, ancoord.

rFace for generation of the example data used below.

Examples

Run this code
# NOT RUN {
set.seed(4634)
face <- rFace(300,dMoNo=2,dNoEy=0,p=3)
grface <- as.integer(attr(face,"grouping"))

# The abs in the following is there to unify the output,
# because eigenvectors are defined only up to their sign.
# Statistically it doesn't make sense to compute absolute values. 
round(abs(discrproj(face,grface, method="nc")$units),digits=2)
round(abs(discrproj(face,grface, method="wnc")$units),digits=2)
round(abs(discrproj(face,grface, clnum=1, method="arc")$units),digits=2)
# }

Run the code above in your browser using DataLab