hierEGA | R Documentation |
EGA
Estimates EGA using the lower-order solution of the Louvain
algorithm (cluster_louvain
)to identify the lower-order
dimensions and then uses factor or network loadings to estimate factor
or network scores, which are used to estimate the higher-order dimensions
(for more details, see Jiménez et al., 2023)
hierEGA(
data,
loading.method = c("original", "revised"),
rotation = NULL,
scores = c("factor", "network"),
loading.structure = c("simple", "full"),
impute = c("mean", "median", "none"),
corr = c("auto", "cor_auto", "pearson", "spearman"),
na.data = c("pairwise", "listwise"),
model = c("BGGM", "glasso", "TMFG"),
lower.algorithm = "louvain",
higher.algorithm = c("leiden", "louvain", "walktrap"),
uni.method = c("expand", "LE", "louvain"),
plot.EGA = TRUE,
verbose = FALSE,
...
)
data |
Matrix or data frame. Should consist only of variables to be used in the analysis (does not accept correlation matrices) |
loading.method |
Character (length = 1).
Sets network loading calculation based on implementation
described in |
rotation |
Character.
A rotation to use to obtain a simpler structure.
For a list of rotations, see |
scores |
Character (length = 1).
How should scores for the higher-order structure be estimated?
Defaults to Factor scores use the number of communities from
|
loading.structure |
Character (length = 1).
Whether simple structure or the saturated loading matrix
should be used when computing scores (
Simple structure is the more conservative (established) approach
and is therefore the default. Treat |
impute |
Character (length = 1). If there are any missing data, then imputation can be implemented. Available options:
|
corr |
Character (length = 1).
Method to compute correlations.
Defaults to
For other similarity measures, compute them first and input them
into |
na.data |
Character (length = 1).
How should missing data be handled?
Defaults to
|
model |
Character (length = 1).
Defaults to
|
lower.algorithm |
Character or
Louvain with consensus clustering is strongly recommended. Using any other algorithm is considered experimental as they have not been designed to capture lower order communities |
higher.algorithm |
Character or
Using |
uni.method |
Character (length = 1).
What unidimensionality method should be used?
Defaults to
|
plot.EGA |
Boolean.
If |
verbose |
Boolean (length = 1).
Whether messages and (insignificant) warnings should be output.
Defaults to |
... |
Additional arguments to be passed on to
|
Returns a list of lists containing:
lower_order |
|
higher_order |
|
parameters |
A list containing |
dim.variables |
A data frame with variable names and their lower and higher order assignments |
TEFI |
Generalized TEFI using |
plot.hierEGA |
Plot output if |
Marcos Jiménez <marcosjnezhquez@gmailcom>, Francisco J. Abad <fjose.abad@uam.es>, Eduardo Garcia-Garzon <egarcia@ucjc.edu>, Hudson Golino <hfg9s@virginia.edu>, Alexander P. Christensen <alexpaulchristensen@gmail.com>, and Luis Eduardo Garrido <luisgarrido@pucmm.edu.do>
Hierarchical EGA simulation
Jiménez, M., Abad, F. J., Garcia-Garzon, E., Golino, H., Christensen, A. P., & Garrido, L. E. (2023).
Dimensionality assessment in bifactor structures with multiple general factors: A network psychometrics approach.
Psychological Methods.
3+ level hierarchical EGA
Samo, A., Christensen, A. P., Abad, F. J., Garrido, L. E., Garcia-Garzon, E., Golino, H. & McAbee, S. T. (2023). Building the structure of personality from the bottom-up using Hierarchical Exploratory Graph Analysis.
PsyArXiv.
Conceptual implementation
Golino, H., Thiyagarajan, J. A., Sadana, R., Teles, M., Christensen, A. P., & Boker, S. M. (2020).
Investigating the broad domains of intrinsic capacity, functional ability and
environment: An exploratory graph analysis approach for improving analytical
methodologies for measuring healthy aging.
PsyArXiv.
Revised network loadings
Christensen, A. P., Golino, H., Abad, F. J., & Garrido, L. E. (2024).
Revised network loadings.
PsyArXiv.
plot.EGAnet
for plot usage in
# Example using network scores
opt.hier <- hierEGA(
data = optimism, scores = "network",
plot.EGA = FALSE # No plot for CRAN checks
)
# Plot multilevel plot
plot(opt.hier, plot.type = "multilevel")
# Plot multilevel plot with higher order
# border color matching the corresponding
# lower order color
plot(opt.hier, color.match = TRUE)
# Plot levels separately
plot(opt.hier, plot.type = "separate")
Add the following code to your website.
For more information on customizing the embed code, read Embedding Snippets.