Skip to contents

Computes the between- and within-community strength of each variable for each community

Usage

net.loads(
  A,
  wc,
  loading.method = c("original", "revised"),
  scaling = 2,
  rotation = NULL,
  ordered = c("descending", "variable"),
  ...
)

Arguments

A

Network matrix, data frame, or EGA object

wc

Numeric or character vector (length = ncol(A)). A vector of community assignments. If input into A is an EGA object, then wc is automatically detected

loading.method

Character (length = 1). Sets network loading calculation based on implementation described in "original" (Christensen & Golino, 2021) or the "revised" (Christensen et al., 2024) implementation. Defaults to "revised"

scaling

Numeric (length = 1). Scaling factor for the magnitude of the "experimental" network loadings. Defaults to 2. 10 makes loadings roughly the size of factor loadings when correlations between factors are orthogonal

rotation

Character (length = 1). A rotation to use to obtain a simpler structure. For a list of rotations, see rotations for options. Defaults to NULL or no rotation. By setting a rotation, scores estimation will be based on the rotated loadings rather than unrotated loadings

ordered

Character (length = 1). How the loadings should be ordered in the output. Available options:

  • "descending" (default) — Sorts loadings in descending order on their assigned community. This option is best for interpretation

  • "variable" — Keeps variables in the same order as the original network. This option is best for analyses

...

Additional arguments to pass on to rotations

Value

Returns a list containing:

unstd

A matrix of the unstandardized within- and between-community strength values for each node

std

A matrix of the standardized within- and between-community strength values for each node

rotated

NULL if rotation = NULL; otherwise, a list containing the rotated standardized network loadings (loadings) and correlations between dimensions (Phi) from the rotation

Details

Simulation studies have demonstrated that a node's strength centrality is roughly equivalent to factor loadings (Christensen & Golino, 2021; Hallquist, Wright, & Molenaar, 2019). Hallquist and colleagues (2019) found that node strength represented a combination of dominant and cross-factor loadings. This function computes each node's strength within each specified dimension, providing a rough equivalent to factor loadings (including cross-loadings; Christensen & Golino, 2021).

References

Original implementation and simulation
Christensen, A. P., & Golino, H. (2021). On the equivalency of factor and network loadings. Behavior Research Methods, 53, 1563-1580.

Demonstration of node strength similarity to CFA loadings
Hallquist, M., Wright, A. C. G., & Molenaar, P. C. M. (2019). Problems with centrality measures in psychopathology symptom networks: Why network psychometrics cannot escape psychometric theory. Multivariate Behavioral Research, 1-25.

Revised network loadings
Christensen, A. P., Golino, H., Abad, F. J., & Garrido, L. E. (2025). Revised network loadings. Behavior Research Methods, 57, 114.

Author

Alexander P. Christensen <alexpaulchristensen@gmail.com> and Hudson Golino <hfg9s at virginia.edu>

Examples

# Load data
wmt <- wmt2[,7:24]

# Estimate EGA
ega.wmt <- EGA(
  data = wmt,
  plot.EGA = FALSE # No plot for CRAN checks
)

# Network loadings
net.loads(ega.wmt)
#> The default 'loading.method' has changed to "revised" in {EGAnet} version >= 2.0.7.
#> 
#>  For the previous default (version <= 2.0.6), use `loading.method = "original"`
#> Loading Method: Revised
#> 
#>       1     2    
#> wmt2  0.608 0.145
#> wmt1  0.402 0.106
#> wmt3  0.344 0.204
#> wmt5  0.318 0.234
#> wmt4  0.298 0.231
#> wmt9        0.523
#> wmt7        0.461
#> wmt15       0.441
#> wmt14       0.433
#> wmt6  0.177 0.429
#> wmt16       0.392
#> wmt8        0.391
#> wmt10  0.21 0.368
#> wmt12       0.334
#> wmt18       0.326
#> wmt13       0.304
#> wmt17 0.122 0.299
#> wmt11       0.277
#> Standardized loadings >= |0.10| are displayed. To change this 'minimum', use `print(net.loads_object, minimum = 0.10)`