Hi William,
Thanks for the update. I see this package has so many capabilities ! I
will suggest further for its development if anything else comes to my mind.
Regards,
Sagnik
On Thu, May 15, 2014 at 6:34 AM, William Revelle <lists at revelle.net>
wrote:
Sagnik,
I did some more checking and in fact you can do equamax through GPA
rotation. (Gunter Nickel pointed this out in a post to R-help). I will
implement this in version 1.4.6 (1.4.5 is now working its way through the
various CRAN mirrors).
You might like 1.4.5 in that I have added various ways of displaying
confidence intervals (cats eye plots) as well as upper and lower confidence
limits for correlations (cor.plot.upperLowerCi)
Bill
On Apr 10, 2014, at 1:22 AM, sagnik chakravarty <sagnik.stats at gmail.com>
wrote:
Thanks a lot Bill and Revelle for your helpful response.
It would have been great if I could know when we can expect the release
of the edited version 1.4.4.
Sagnik
On Wed, Apr 9, 2014 at 8:05 PM, William Revelle <lists at revelle.net>
Sagnik raises the question as to why the psych package does not offer
It is because all rotations are handled through the GPArotation package
which does not offer equamax.
Sagnik also points out that if the requested rotation is not available,
fa defaults to rotate=?none? without any warning. I have fixed that for
the next release (1.4.4).
(1.4.4 also will fix a bug in corr.test introduced into 1.4.3).
The question about why printing just the loadings matrix leaves blank
cells? That is because the loadings matrix of class ?loadings? which the
default print function prints with a cut = .3.
Using the example from Sagnik, print(efa_pa$loadings,cut=0) will match
The fm=?pa? option runs conventional principal axis factor analysis
(ala SPSS). As documented, this iterates max.iter times
"Not all factor programs that do principal axes do iterative solutions.
The example from the SAS manual (Chapter 26) is such a case. To achieve
that solution, it is necessary to specify that the max.iterations = 1.
Comparing that solution to an iterated one (the default) shows that
iterations improve the solution. In addition, fm="minres" or fm="mle"
produces even better solutions for this example.?
The com column is factor complexity using the index developed by
Hofmann (1978). It is a row wise measure of item complexity.
I have added more documentation to this in 1.4.4
Bill
On Apr 8, 2014, at 2:28 AM, Pascal Oettli <kridox at ymail.com> wrote:
Hello,
And what about submitting your suggestions directly to the package
author/maintainer?
And please don't post in HTML.
Regards,
Pascal
On Tue, Apr 8, 2014 at 3:13 PM, sagnik chakravarty
<sagnik.stats at gmail.com> wrote:
Hi Team,
I was using your "psych" package for factor analysis and was also
the results with SAS results. I have some suggestions and/or
regarding the fa() function in the package:
- The fa() function *doesn't account for Heywood cases*
greater than 1) and never ever throws out any error related to
other softwares do. This is a serious and common issue in
analysis and hence should have been accounted for.
- The fa() function doesn't provide "equamax" rotation in its
list and still if you specify "*rotation=equamax*", it will run
throwing out any error and even mentioning in the result that
been applied. But I have thoroughly compared results from "
*rotation=none*" and "*rotation=equamax*" options and they are
same. *That means fa() is not doing the rotation at all and yet
that it is doing that!!* I have even mentioned "*rotation=crap*"
just to check and surprisingly it ran(without any error) with the
showing:
*Factor Analysis using method = gls*
* Call: fa(r = cor_mat, nfactors = 4, n.obs = 69576,
"crap", fm = "gls")*
I hope you understand the severity of this bug and hence
request you to correct this.
- To my sense, there might be some problem with "fm=ml" and "fm=pa"
options since the convergence issue should be with MLE method and
method but while running factor analysis with PA, I am getting the
following warning:
*maximum iteration exceeded*
* The estimated weights for the factor scores are probably
incorrect. Try a different factor extraction method.*
If I compare the results of R and SAS,* I am getting
convergence error for MLE in SAS whereas I am getting the same error
in R *!! I am not being able to understand this mismatch.
- If I call the *loading matrix like efa_pa$loadings, the matrix
has many blank cells whereas the final result showing the loadings
have so* !!
*Loadings:*
* PA1 PA2 PA3 PA4 *
*Var1 0.401 -0.243*
*Var2 0.336 -0.104 0.710*
*Var3 0.624 0.123 0.170 *
- Could you please explain* what the "com" column means* in the
* PA1 PA3 PA2 PA4 h2 u2 com*
*Var1 0.44 0.14 -0.03 -0.10 0.22665 0.773 1.3*
*Var2 0.08 0.11 0.02 0.78 0.62951 0.370 1.1*
*Var3 0.62 0.12 0.15 0.14 0.43578 0.564 1.3*
- Request you to add option for *"equamax" rotation* also if
I have come across the above issues until now. Please do correct me
wrong.
Awaiting your revert which would clear out my confusions,
Thanks for your valuable time,
Sagnik
--
Regards,
*SAGNIK CHAKRAVARTY*
*Mob:* +919972865435
*Email:* sagnik.stats at gmail.com
sagnik.739 at gmail.com
[[alternative HTML version deleted]]