Bookmark and Share

Notice: On April 23, 2014, Statalist moved from an email list to a forum, based at

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: st: factor analysis and bootstrapping

From   Nick Cox <>
Subject   Re: st: factor analysis and bootstrapping
Date   Wed, 1 Feb 2012 01:45:27 +0000

The way -bootstrap- works hinges on taking one or more scalar results
and looking at their distribution(s) under sampling with replacement.
But you are trying to put a series of matrix results into a single
variable. That won't work if only because you can't fit a matrix into
a single value of a variable.

In addition, I don't understand why you are trying to -bootstrap-
rotation. Where's the stochastic element in that? The same rotation of
the same factor analysis results will give the same rotated results.
It's like rotating from facing N to facing E, but doing it 1000 times.

I imagine what you want to do is -bootstrap- the whole shebang, i.e. a
-factor- analysis followed by -rotate-, in which there will be
variation because the factor analysis results will differ because of
different samples. In that case, you would need to write a program to
encapsulate both, and -- first point above -- taking each loading from
the matrix and putting it into a separate scalar.

If you seek comment on Martin Weiss's advice, please give the specific URL.


On Tue, Jan 31, 2012 at 11:37 PM, Jurgen Sidgman <> wrote:
> A few months ago a post identical to the one I have here was made and answered by Martin Weiss. The problem is that I have not been able to execute following his advice. So here it goes.
> I want to bootstrap the factor loadings that I obtain after executing
> factor var1 var2…, pcf
> to determine if the loadings are statistically different from zero at conventional levels. Without attempting the bootstrapping all works well. However trying the following commands rotate does not work and I cannot seem to find a solution:
> bootstrap, reps(1000): rotate
> bootstrap load:e(L), reps(1000): rotate
> bootstrap e(L), reps(1000): rotate promax
> I have also tried:
> bootstrap loadings=e(L), reps(1000): rotate promax

*   For searches and help try:

© Copyright 1996–2018 StataCorp LLC   |   Terms of use   |   Privacy   |   Contact us   |   Site index