Learn R Programming

EGAnet (version 1.2.3)

simDFM: Simulate data following a Dynamic Factor Model

Description

Function to simulate data following a dynamic factor model (DFM). Two DFMs are currently available: the direct autoregressive factor score model (Engle & Watson, 1981; Nesselroade, McArdle, Aggen, and Meyers, 2002) and the dynamic factor model with random walk factor scores.

Usage

simDFM(
  variab,
  timep,
  nfact,
  error,
  dfm = c("DAFS", "RandomWalk"),
  loadings,
  autoreg,
  crossreg,
  var.shock,
  cov.shock,
  burnin = 1000,
  variation = FALSE
)

Arguments

variab

Number of variables per factor.

timep

Number of time points.

nfact

Number of factors.

error

Value to be used to construct a diagonal matrix Q. This matrix is p x p covariance matrix Q that will generate random errors following a multivariate normal distribution with mean zeros. The value provided is squared before constructing Q.

dfm

A string indicating the dynamical factor model to use. Current options are:

  • DAFS Simulates data using the direct autoregressive factor score model. This is the default method

  • RandomWalk Simulates data using a dynamic factor model with random walk factor scores.

loadings

Magnitude of the loadings.

autoreg

Magnitude of the autoregression coefficients.

crossreg

Magnitude of the cross-regression coefficients.

var.shock

Magnitude of the random shock variance.

cov.shock

Magnitude of the random shock covariance

burnin

Number of n first samples to discard when computing the factor scores. Defaults to 1000.

variation

Boolean. Whether parameters should be varied. Defaults to FALSE. Set to TRUE to add slight variation to all parameters

Author

Hudson F. Golino <hfg9s at virginia.edu>

References

Engle, R., & Watson, M. (1981). A one-factor multivariate time series model of metropolitan wage rates. Journal of the American Statistical Association, 76(376), 774-781.

Nesselroade, J. R., McArdle, J. J., Aggen, S. H., & Meyers, J. M. (2002). Dynamic factor analysis models for representing process in multivariate time-series. In D. S. Moskowitz & S. L. Hershberger (Eds.), Multivariate applications book series. Modeling intraindividual variability with repeated measures data: Methods and applications, 235-265.

Examples

Run this code
if (FALSE) {
# Estimate EGA network
data1 <- simDFM(variab = 5, timep = 50, nfact = 3, error = 0.05,
dfm = "DAFS", loadings = 0.7, autoreg = 0.8,
crossreg = 0.1, var.shock = 0.18,
cov.shock = 0.36, burnin = 1000)}

Run the code above in your browser using DataLab