Principal Component Analysis for IDL

This code gathers together several readily available and not-so-available algorithms into a single IDL package, with all differences in the exact application of PCA smoothed out. Download here ! You can also find it on GitHub.

Python versions of the gappy and normalised gappy PCA algorithms are available on John Weaver's GitHub page .

If you use the Robust and Iterative PCA algorithm provided in this package, I kindly request that you cite the paper in which the algorithm is presented (Budavari et al. 2009, MNRAS, 394, 1496, ADS ).

There are no further restrictions to the use of this code, but I and all other users would appreciate it if you tell me where the bugs are lurking. Of course acknowledgements are always welcome.

This work would not have been possible without the input of many others. In particular I would like to thank:

Tamas Budavari (incremental and robust algorithm)
Gerard Lemson (normgappy code)
Darren Madgwick (expectation-maximisaton code)
Stephane Charlot and Gustavo Bruzual for the model galaxy spectra provided for testing
Alex Szalay
John Weaver, who translated the gappy PCA IDl code into python during an undergraduate research project