help mca dialog: mca
also see: mca postestimation
-------------------------------------------------------------------------------
Title
[MV] mca -- Multiple and joint correspondence analysis
Syntax
Basic syntax for two or more categorical variables
mca varlist [if] [in] [weight][, options]
Full syntax for use with two or more categorical or crossed (stacked)
categorical variables
mca speclist [if] [in] [weight] [, options]
where
speclist = spec [spec ...]
spec = varlist | (newvar : varlist)
options description
-------------------------------------------------------------------------
Model
supplementary(speclist) supplementary (passive) variables
method(burt) use the Burt matrix approach to MCA; the
default
method(indicator) use the indicator matrix approach to MCA
method(joint) perform a joint correspondence analysis (JCA)
dimensions(#) number of dimensions (factors, axes); default
is dim(2)
normalize(standard) display standard coordinates; the default
normalize(principal) display principal coordinates
iterate(#) maximum number of method(joint) iterations;
default is iterate(250)
tolerance(#) tolerance for method(joint) convergence
criterion; default is tolerance(1e-5)
missing treat missing values as ordinary values
noadjust suppress the adjustment of eigenvalues
(method(burt) only)
Codes
report(variables) report coding of crossing variables
report(crossed) report coding of crossed variables
report(all) report coding of crossing and crossed
variables
length(min) use minimal length unique codes of crossing
variables
length(#) use # as coding length of crossing variables
Reporting
ddimensions(#) display # singular values; default is ddim(.)
(all)
points(varlist) display tables for listed variables; default
is all variables
compact display statistics table in a compact format
log display the iteration log (method(joint) only)
plot plot the coordinates (i.e., mcaplot)
maxlength(#) maximum number of characters for labels in
plot; default is maxlength(12)
-------------------------------------------------------------------------
bootstrap, by, jackknife, rolling, and statsby may be used with mca; see
prefix. However, bootstrap and jackknife results should be interpreted
with caution; identification of the mca parameters involves
data-dependent restrictions, possibly leading to badly biased and
overdispersed estimates.
Weights are not allowed with the bootstrap prefix.
fweights are allowed; see weight.
See [MV] mca postestimation for features available after estimation.
Menu
Statistics > Multivariate analysis > Correspondence analysis > Multiple
correspondence analysis (MCA)
Description
mca performs multiple correspondence analysis (MCA) or joint
correspondence analysis (JCA) on a series of categorical variables. MCA
and JCA are two generalizations of correspondence analysis (CA) of a
cross-tabulation of two variables (see [MV] ca) to the cross-tabulation
of multiple variables.
mca performs an analysis of two or more integer-valued variables.
Crossing (also called stacking) of integer-valued variables is also
allowed.
Options
+-------+
----+ Model +------------------------------------------------------------
supplementary(speclist) specifies that speclist are supplementary
variables. Such variables do not affect the MCA solution, but their
categories are mapped into the solution space. For
method(indicator), this mapping uses the first method described by
Greenacre (2006). For method(burt) and method(joint), the second and
recommended method described by Greenacre (2006) is used, in which
supplementary column principal coordinates are derived as a weighted
average of the standard row coordinates, weighted by the
supplementary profile. See the mca syntax diagram for the syntax of
speclist.
method(method) specifies the method of MCA/JCA.
method(burt), the default, specifies MCA, a categorical variables
analogue to principal component analysis (see [MV] pca). The
Burt method performs a CA of the Burt matrix, a matrix of the
two-way cross-tabulations of all pairs of variables.
method(indicator) specifies MCA via a CA on the indicator matrix
formed from the variables.
method(joint) specifies JCA, a categorical variables analogue to
factor analysis (see [MV] factor). This method analyzes a
variant of the Burt matrix, in which the diagonal blocks are
iteratively adjusted for the poor diagonal fit of MCA.
dimensions(#) specifies the number of dimensions (= factors = axes) to be
extracted. The default is dimensions(2). If you specify
dimensions(1), the categories are placed on one dimension. The
number of dimensions is no larger than the number of categories in
the active variables (regular and crossed) minus the number of active
variables, and it can be less. This excludes supplementary
variables. Specifying a larger number than the dimensions available
results in extracting all dimensions.
MCA is a hierarchical method so that extracting more dimensions does
not affect the coordinates and decomposition of inertia of dimensions
already included. The percentages of inertia accounting for the
dimensions are in decreasing order as indicated by the singular
values. The first dimension accounts for the most inertia, followed
by the second dimension, and then the third dimension, etc.
normalize(normalization) specifies the normalization method, i.e., how
the row and column coordinates are obtained from the singular vectors
and singular values of the matrix of standardized residuals.
normalize(standard) specifies that coordinates are returned in
standard normalization (singular values divided by the square
root of the mass). This is the default.
normalize(principal) specifies that coordinates are returned in
principal normalization. Principal coordinates are standard
coordinates multiplied by the square root of the corresponding
principal inertia.
iterate(#) is a technical and rarely used option specifying the maximum
number of iterations. iterate() is permitted only with
method(joint). The default is iterate(250).
tolerance(#) is a technical and rarely used option specifying the
tolerance for subsequent modification of the diagonal blocks of the
Burt matrix. tolerance() is permitted only with method(joint). The
default is tolerance(1e-5).
missing treats missing values as ordinary values to be included in the
analysis. Observations with missing values are omitted from the
analysis by default.
noadjust suppresses principal inertia adjustment and is allowed with
method(burt) only. By default, the principal inertias (eigenvalues
of the Burt matrix) are adjusted. The unmodified principal inertias
present a pessimistic measure of fit because MCA fits the diagonal of
P poorly (see Greenacre 1984).
+-------+
----+ Codes +------------------------------------------------------------
report(opt) displays coding information for the crossing variables,
crossed variables, or both. report() is ignored if you do not
specify at least one crossed variable.
report(variables) displays the coding schemes of the crossing
variables, i.e., the variables used to define the crossed
variables.
report(crossed) displays a table explaining the value labels of the
crossed variables.
report(all) displays the codings of the crossing and crossed
variables.
length(opt) specifies the coding length of crossing variables.
length(min) specifies that the minimal-length unique codes of
crossing variables be used.
length(#) specifies that the coding length # of crossing variables be
used, where # must be between 4 and 32.
+-----------+
----+ Reporting +--------------------------------------------------------
ddimensions(#) specifies the number of singular values to be displayed.
If ddimensions() is greater than the number of singular values, all
the singular values will be displayed. The default is
ddimensions(.), meaning all singular values.
points(varlist) indicates the variables to be included in the tables. By
default, tables are displayed for all variables. Regular categorical
variables, crossed variables, and supplementary variables may be
specified in points().
compact specifies that point statistics tables be displayed multiplied by
1,000, enabling the display of more columns without wrapping output.
The compact tables can be displayed without wrapping for models with
two dimensions at line size 79 and with three dimensions at line size
99.
log displays an iteration log. This option is permitted with
method(joint) only.
plot displays a plot of the row and column coordinates in two dimensions.
Use mcaplot directly to select different plotting points or for other
graph refinements; see [MV] mca postestimation.
maxlength(#) specifies the maximum number of characters for labels in
plots. The default is maxlength(12). # must be less than 32.
Note: the reporting options may be specified during estimation or replay.
Examples
By default MCA analyzes the Burt matrix of cross-tabulations of the data
and performs adjustments on the principal inertias.
. webuse issp93a
. mca A B C D
Other methods are available with mca. method(indicator) is equivalent to
analyzing the indicator matrix of the data. We extract three dimensions
and display output in compact form.
. mca A B C D, method(indicator) dim(3) compact
method(joint) performs joint correspondence analysis. Here a crossed
supplementary variable, demo, with the demographic information on gender
and education, is added. Supplementary variables do not affect the
estimation results.
. mca A B C D, method(joint) supp((demo: sex edu))
Saved results
mca saves the following in e():
Scalars
e(N) number of observations
e(f) number of dimensions
e(inertia) total inertia
e(ev_unique) 1 if all eigenvalues are distinct, 0 otherwise
e(adjust) 1 if eigenvalues are adjusted, 0 otherwise
(method(burt) only)
e(converged) 1 if successful convergence, 0 otherwise
(method(joint) only)
e(iter) number of iterations (method(joint) only)
e(inertia_od) proportion of off-diagonal inertia explained by the
extracted dimensions (method(joint) only)
Macros
e(cmd) mca
e(cmdline) command as typed
e(names) names of MCA variables (crossed or actual)
e(supp) names of supplementary variables
e(defs) per crossed variable: crossing variables separated
by "\"
e(missing) missing if missing values are treated as ordinary
values
e(crossed) 1 if there are crossed variables, 0 otherwise
e(wtype) weight type
e(wexp) weight expression
e(title) title in output
e(method) burt, indicator, or joint
e(norm) standard or principal
e(properties) nob noV eigen
e(estat_cmd) program used to implement estat
e(predict) program used to implement predict
e(marginsnotok) predictions disallowed by margins
Matrices
e(Coding#) row vector with coding of variable #
e(A) standard coordinates for column categories
e(F) principal coordinates for column categories
e(cMass) column mass
e(cDist) distance column to centroid
e(cInertia) column inertia
e(cGS) general statistics of column categories
[.,1] column mass
[.,2] overall quality
[.,3] inertia/sum(inertia)
[.,3*f+1] dim f: coordinate in e(norm)
normalization
[.,3*f+2] dim f: contribution of the profiles to
principal axes
[.,3*f+3] dim f: contribution of principal axes to
profiles
(= squared correlation of profile and axes)
e(rSCW) weight matrix for row standard coordinates
e(Ev) principal inertias/eigenvalues
e(inertia_e) explained inertia (percent)
e(Bmod) modified Burt matrix of active variables
(method(joint) only)
e(inertia_sub) variable-by-variable inertias (method(joint) only)
Functions
e(sample) marks estimation sample
References
Greenacre, M. J. 1984. Theory and Applications of Correspondence
Analysis. London: Academic Press.
------. 2006. From simple to multiple correspondence analysis. In
Multiple Correspondence Analysis and Related Methods, ed. M.
Greenacre and J. Blasius. Boca Raton, FL: Chapman & Hall/CRC.
Also see
Manual: [MV] mca
Help: [MV] mca postestimation;
[MV] ca, [MV] canon, [MV] factor, [MV] pca