This article describes a simple and fast algorithm for generating correlation matrices ( R ) with a known average correlation. The algorithm should be useful for researchers desiring plausible R matrices for substantive domains in which average correlations are known (at least approximately). The method is non-iterative and it can solve relatively large problems (e.g., generate a 500 × 500 R matrix) in less than a second on a personal computer. It also has didactic value for introducing students to the convex set of feasible R matrices of a fixed dimension. This Euclidean body is called an elliptope. The proposed method exploits the geometry of elliptopes to efficiently generate realistic R matrices with a desired average correlation coefficient. R code for implementing the algorithm (and for reproducing all of the results of this article) is reported in an online supplement.
Read full abstract