Either a data.frame, or an object of class
lavaan.
dimension
Integer. If 0L, display all response patterns. If 1L,
display one-dimensional (one-way) tables; if 2L, display two-dimensional
(two-way or pairwise) tables. For the latter, we can change the information
per row: if type = "cells", each row is a cell in a pairwise table;
if type = "table", each row is a table.
type
If "cells", display information for each cell in the
(one-way or two-way) table. If "table", display information per table.
If "pattern", display response patterns (implying
"dimension = 0L").
categorical
Only used if object is a data.frame. Specify
variables that need to be treated as categorical.
group
Only used if object is a data.frame. Specify
a grouping variable.
statistic
Either a character string, or a vector of character strings
requesting one or more statistics for each cell, pattern or table. Always
available are X2 and G2 for the Pearson and LRT based
goodness-of-fit statistics. A distinction is made between the unrestricted and
restricted model. The statistics based on the former have an extension
*.un, as in X2.un and G2.un. If object is a
data.frame, the unrestricted versions of the statistics are the only
ones available. For one-way tables, additional statistics are the thresholds
(th.un and th). For two-way tables and type = "table", the
following statistics are available: X2, G2, cor
(polychoric correlation), RMSEA and the corresponding unrestricted
versions (X2.un etc). Additional statistics are G2.average,
G2.nlarge and G2.plarge statistics based on the cell values
G2:
G2.average is the average of the G2 values in each cell of the
two-way table; G2.nlarge is the number of cells with a G2 value
larger than G2.min, and G2.plarge is the proportion of cells with
a G2 value larger than G2.min. A similar set of statistics based
on X2 is also available. If "default", the selection of
statistics (if any) depends on the dim and type arguments, and if
the object is a data.frame or a fitted lavaan object.
G2.min
Numeric. All cells with a G2 statistic larger than this number
are considered ‘large’, as reflected in the (optional) "G2.plarge" and
"G2.nlarge" columns.
X2.min
Numeric. All cells with a X2 statistic larger than this number
are considered ‘large’, as reflected in the (optional) "X2.plarge" and
"X2.nlarge" columns.
p.value
Logical. If "TRUE", p-values are computed for
requested statistics (eg G2 or X2) if possible.
output
If "data.frame", the output is presented as a data.frame
where each row is either a cell, a table, or a response pattern, depending
on the "type" argument. If "table", the output is presented
as a table (or matrix) or a list of tables. Only a single statistic can be
shown in this case, and if the statistic is empty, the observed
frequencies are shown.
patternAsString
Logical. Only used for response patterns (dimension = 0L). If "TRUE", response patterns are displayed as a compact string.
If "FALSE", as many columns as observed variables are displayed.
Value
If output = "data.frame", the output is presented as a data.frame
where each row is either a cell, a table, or a response pattern, depending on
the "type" argument.
If output = "table" (only for two-way tables),
a list of tables (if type = "cells") where each list element
corresponds to a pairwise table, or if type = "table", a single table
(per group). In both cases, the table entries are determined by the
(single) statistic argument.
References
Joreskog, K.G. & Moustaki, I. (2001). Factor analysis of ordinal variables: A
comparison of three approaches. Multivariate Behavioral Research, 36, 347-387.
See Also
varTable.
Examples
HS9 <- HolzingerSwineford1939[,c("x1","x2","x3","x4","x5",
"x6","x7","x8","x9")]
HSbinary <- as.data.frame( lapply(HS9, cut, 2, labels=FALSE) )
# using the data only
lavTables(HSbinary, dim = 0L, categorical = names(HSbinary))
lavTables(HSbinary, dim = 1L, categorical = names(HSbinary), stat=c("th.un"))
lavTables(HSbinary, dim = 2L, categorical = names(HSbinary), type = "table")
# fit a model
HS.model <- ' visual =~ x1 + x2 + x3
textual =~ x4 + x5 + x6
speed =~ x7 + x8 + x9 '
fit <- cfa(HS.model, data=HSbinary, ordered=names(HSbinary))
lavTables(fit, 1L)
lavTables(fit, 2L, type="cells")
lavTables(fit, 2L, type="table", stat=c("cor.un", "G2", "cor"))
lavTables(fit, 2L, type="table", output="table", stat="X2")