This is a very common computation in finance.
On the public domain page of the Burns Statistics website
in the financial part is the code and R help file for
'factor.model.stat'. Most of the complication of the code
is to deal with missing values.
Patrick Burns
patrick at burns-stat.com
+44 (0)20 8525 0696
http://www.burns-stat.com
(home of S Poetry and "A Guide for the Unwilling S User")
Spencer Graves wrote:
> Are there any functions available to do a factor analysis with
>fewer observations than variables? As long as you have more than 3
>observations, my computations suggest you have enough data to estimate a
>factor analysis covariance matrix, even though the sample covariance
>matrix is singular. I tried the naive thing and got an error:
>
> > set.seed(1)
> > X <- array(rnorm(50), dim=c(5, 10))
> > factanal(X, factors=1)
>Error in solve.default(cv) : system is computationally singular:
>reciprocal condition number = 4.8982e-018
>
> I can write a likelihood for a multivariate normal and solve it,
>but I wondered if there is anything else available that could do this?
>
> Thanks,
> Spencer Graves
>
>______________________________________________
>R-help at stat.math.ethz.ch mailing list
>https://stat.ethz.ch/mailman/listinfo/r-help
>PLEASE do read the posting guide http://www.R-project.org/posting-guide.html
>and provide commented, minimal, self-contained, reproducible code.
>
>
>
>