weighted_procrustes_switching: Weighted Orthogonal Procrustes rotations

weighted_procrustes_switchingR Documentation

Weighted Orthogonal Procrustes rotations

Description

Weighted Orthogonal Procrustes (WOP) post-processing (Assmann et al. 2016) augmented with a final varimax rotation as implemented in Papastamoulis and Ntzoufras (2020). The algorithm uses the procrustes function of the MCMCpack package.

Usage

weighted_procrustes_switching(lambda_mcmc, maxIter, threshold, verbose, 
    weight, printIter)

Arguments

lambda_mcmc

Input matrix containing a MCMC sample of factor loadings. The column names should read as 'LambdaV1_1',..., 'LambdaV1_q', ..., 'LambdaVp_1',..., 'LambdaVp_q', where p and q correspond to the number of variables and factors, respectively.

maxIter

Maximum number of iterations of the RSP algorithm. Default: 100.

threshold

Positive threshold for declaring convergence. The actual convergence criterion is threshold m p q with m denoting the number of MCMC iterations. Default: 1e-6.

verbose

Logical value indicating whether to print intermediate output or not.

weight

This is argument is always set to TRUE.

printIter

Print the progress of the algorithm when processing printIter MCMCdraws, per iteration. Default: 1000.

Details

If necessary, more details than the description above.

Value

lambda_reordered_mcmc

Post-processed MCMC sample of factor loadings.

lambda_hat

The resulting average of the post-processed MCMC sample of factor loadings.

objective_function

A two-column matrix containing the time-to-reach and the value of the objective function for each iteration.

Author(s)

Panagiotis Papastamoulis

References

Assmann, C., Boysen-Hogrefem J. and Pape M. (2016). Bayesian analysis of static and dynamic factor models: An ex-post approach towards the rotation problem. Journal of Econometrics: 192 (1): Pages 190-206.

Martin AD, Quinn KM, Park JH (2011). MCMCpack: Markov Chain Monte Carlo in R. Journal of Statistical Software: 42(9), 22.

Papastamoulis, P. and Ntzoufras, I. (2020). On the identifiability of Bayesian Factor Analytic models. arXiv:2004.05105 [stat.ME].

Examples

# load small mcmc sample of 100 iterations
#	with p=6 variables and q=2 factors.
data(small_posterior_2chains)
# post-process it
reorderedPosterior <- weighted_procrustes_switching(
	lambda_mcmc = small_posterior_2chains[[1]])
# summarize the post-processed MCMC sample with coda
summary(reorderedPosterior$lambda_reordered_mcmc)

factor.switching documentation built on March 18, 2022, 6:49 p.m.