# Factor analysis with repeated measures

Multilevel factor analysis seems to be the technical term for factor analysis with repeated measures, judging from this abstract. To be precise, following Wikipedia's factor analysis notation, the model I want to build is

$$x_i =l_{i1} F_1 + \cdots + l_{ik} F_k + z_i + \varepsilon_i$$

where $x_i$ is the $i$th observed variable (already centered and scaled, say), an $n\times 1$ vector. The thing that makes this model different from ordinary factor analysis is the presence of the $n\times 1$ vector $z_i$ on the right-hand side; this is a vector of fixed or random effects that correspond to the repeated measures. Specifically, $z_{i(p)} = z_{i(q)}$ whenever the $p$th and $q$th records come from the same individual.

Multiple queries similar to this one exist (here and here). This question is only slightly more general while hopefully also more expository:

(A) Where can I find a publicly available and detailed description of multilevel factor analysis?

(B) What software exists to do multilevel factor analysis in a pretty straightforward way? Solutions involving R, SAS, Python, or Latent GOLD are of particular interest.

• Given your explanation, in what respect does it differ from performing the standard factoring on the variables $x$, each averaged across the RM-levels (that is, inside each individual)? If the "individual bias" factor $z_i$ is modelled $x_i$-specific and independent of the common factors $F$ - and it is how it appears in your model - then $z_i$ can be safely assessed and cancelled before factor analysis. Sep 5, 2014 at 9:07
• @ttnphns, you seem to understand the model. Your proposal is to estimate $z_i$ and subtract it from both sides of the equation before doing factor analysis, right? But $z_i$ is latent -- how do you propose to estimate $z_i$? In particular, it seems like the estimates would depend on the factor analysis fitted values. Sep 5, 2014 at 12:56
• In my comment I said that in your model formulation - as I understood it - $z_i$ does not appear to be latent. And why should it? In FA, latent are factors common to different $x$'s. With your model, $z_i$ is $x_i$-specific and does not interact with the factors. So why not get rid of $z_i$ prior FA? Sep 5, 2014 at 13:16
• It's easy to imagine situations in which $z_i$ is observable, but in my applications it is not. Sep 5, 2014 at 21:40

I don't know if R (lavaan or OpenMx packages) or Stata (glamm or built-in tools) have such capabilities.