This is the basic function for correspondence regression, i.e. the correspondence analysis of a contingency table formed by the categorical variables Y and X, where X can be in turn made up of the combinations of various categorical variables.
corregp(formula, data, part = NULL, b = 0, xep = TRUE, std = FALSE,
rel = TRUE, phi = FALSE, chr = ".", b_scheme = "multinomial")
A formula
specification of which factors to cross with each other. The left-hand (y
) side must be a single factor.
The right-hand side (x
) can involve all the usual specifications of interactions and/or nested analyses.
The data frame containing the variables specified in the formula
.
Character vector specifying the names of conditional factors (e.g. a factor partioning the levels of the left-hand side y
into groups).
This argument is relevant for analyses in which one wants to remove between-item variation.
Number of the bootstrap replications (simulations). If 0
(i.e. the default), then the analysis is exploratory.
Logical specifying whether to output the separate terms in the right-hand side (x
) as components in a list.
If FALSE
, then all x
output is collected in a matrix.
Logical specifying whether to output the standardized coordinates. Defaults to FALSE
.
Logical specifying whether to divide the coordinates by the sqrt
of their totals, so that one obtains coordinates for
the relative frequencies (as is customary in correspondence analysis). Defaults to TRUE
.
Logical specifying whether to compute the output on the scale of the Chi-squared value of the contingency table or of the Phi-squared value
(which is Chi-squared divided by N). Reminiscent of corresp
in package MASS, defaults to FALSE
.
Character specifying the separator string for constructing the interaction terms.
Character specifying the sampling scheme for bootstrapping. Must match either "multinomial"
(the default) or "product-multinomial"
.
An object of class "corregp", i.e. a list with components:
eigen
A vector of eigenvalues of the correpondence regression.
y
The coordinates (matrix) of the Y levels.
x
The coordinates of the X levels. If xep
is TRUE
, then this is a list with a component for each term name.
freq
A list of the frequencies of every Y and X level.
conf
If \(b>0\). A list of bootstrap replicates for the eigenvalues, the coordinates of Y levels, the coordinates of X levels and the frequencies of both the Y levels and the X levels.
aux
A list of auxiliary information (such as the U and V matrices of the SVD, the specified values for all the arguments) to be passed to other functions and methods.
Correspondence regression rests on the idea, described by Gilula and Haberman (1988), of using a correspondence analysis to model a polytomous or multinomial (i.e.
'multi-category') response variable (Y
) in terms of other (possibly interacting) factors (X
) (see also 3.2 in Van der Heijden et al. 1989). These are
specified in the argument formula
, which can be constructed in all the usual ways of specifying a model formula: e.g.
Y ~ X1 + X2 + X1 : X2
or Y ~ X1 * X2
Y ~ (X1 + X2 + X3) ^ 2
Y ~ X1 * X2 * X3 - X1 : X2 : X3
…
Correspondence regression then crosstabulates the Y
factor with all the combinations in X
, thus producing a typical contingency table, on which a simple
correspondence analysis is performed (see Greenacre 2017: 121-128 for the outline of this approach). The more general effects in X
are obtained by aggregating
the combinations.
Correspondence regression also allows for inferential validation of the effects, which is done by means of the bootstrap (in fact, Monte Carlo simulation). Setting the argument
b
to a number \(> 0\), b
replicates of the contingency table are generated with multinomial sampling. From these, b
new values are derived for the
coordinates in both Y
and X
as well as for the eigenvalues (also called the "principal inertias"). On the basis of the replicate/simulated values,
confidence intervals, ellipses or ellipsoids can be computed. CAUTION: bootstrapping/simulation is computationally quite intensive, so it can take a while to reach
results, especially with a large b
.
The argument parm
can be used when one wants to perform a correspondence regression of Y
onto X
conditional on other factors. These conditioning factors are
therefore equivalent to random factors, and corregp
always conditions on the joint variable of all the specified factors. One such use of conditioning factors is
a so-called lectometric analysis in linguistics, where the levels of Y
are grouped/partitioned/nested into clusters and one wants to exclude the heterogeneity
between the clusters.
Gilula, Z. and S.J. Haberman (1988) The analysis of multivariate contingency tables by restricted canonical and restricted association models. Journal of the American Statistical Association 83 (403), 760--771.
Greenacre, M. (2017) Correspondence analysis in practice, Third edition. Boca Raton: Chapman and Hall/CRC.
Van der Heijden, P.G.M., A. de Falguerolles and J. de Leeuw (1989) A combined approach to contingency table analysis using correspondence analysis and log-linear analysis. Applied Statistics 38 (2), 249--292.
print.corregp
, summary.corregp
, screeplot.corregp
, anova.corregp
, plot.corregp
.
# NOT RUN {
data(HairEye)
haireye.crg <- corregp(Eye ~ Hair * Sex, data = HairEye, b = 3000)
haireye.crg
# }
Run the code above in your browser using DataLab