Abstract
Background
Principal component analysis (PCA) has gained popularity as a method for the analysis of highdimensional genomic data. However, it is often difficult to interpret the results because the principal components are linear combinations of all variables, and the coefficients (loadings) are typically nonzero. These nonzero values also reflect poor estimation of the true vector loadings; for example, for gene expression data, biologically we expect only a portion of the genes to be expressed in any tissue, and an even smaller fraction to be involved in a particular process. Sparse PCA methods have recently been introduced for reducing the number of nonzero coefficients, but these existing methods are not satisfactory for highdimensional data applications because they still give too many nonzero coefficients.
Results
Here we propose a new PCA method that uses two innovations to produce an extremely sparse loading vector: (i) a randomeffect model on the loadings that leads to an unbounded penalty at the origin and (ii) shrinkage of the singular values obtained from the singular value decomposition of the data matrix. We develop a stable computing algorithm by modifying nonlinear iterative partial least square (NIPALS) algorithm, and illustrate the method with an analysis of the NCI cancer dataset that contains 21,225 genes.
Conclusions
The new method has better performance than several existing methods, particularly in the estimation of the loading vectors.
Background
Principal component analysis (PCA) or its equivalent singularvalue decomposition (SVD) is widely used for the analysis of highdimensional data. For such gene expression data with an enormous number of variables, PCA is a useful technique for visualization, analyses and interpretation [14].
Lower dimensional views of data made possible, via the PCA, often give a global picture of gene regulation that would reveal more clearly, for example, a group of genes with similar or related molecular functions or cellular states, or samples of similar or connected phenotypes, etc. PCA results might be used for clustering, but bear in mind that PCA is not simply a clustering method, as it has distinct analytical properties and utilities from the clustering methods. Simple interpretation and subsequent usage of PCA results often depends on the ability to identify subsets with nonzero loadings, but this effort is hampered by the fact that the standard PCA yields nonzero loadings on all variables. If the lowdimensional projections are relatively simple, many loadings are not statistically significant, so the nonzero values reflect the high variance of the standard method. In this paper our focus on the PCA methodology is constrained to produce sparse loadings.
Suppose X is an n × p data matrix centered across the columns, where n and p are the number of observations and the number of variables, respectively. Also, let S_{X }= X^{T}X/n be the sample covariance matrix of X. In PCA, the interest is to find the linear combination z_{k }= Xv_{k}, for k = 1, ..., p, which maximizes
with the constraints and v_{k }⊥ v_{h }for all h < k. PCA can be computed through the SVD of X. Let the SVD of X be
where D is n × p matrix with (i, i )th element d_{i}; the columns of Z = UD = XV are the principal component scores, and the columns of the p × p matrix V are the corresponding loadings. The vector v_{k }in (1) is the kth column of V.
Each principal component in (2) is a linear combination of p variables, where the loadings are typically nonzero so that PCA results are often difficult to interpret. To get sparse loadings, [5] proposed to use L_{1}penalty, which corresponds to the leastabsolute shrinkage and selection operator (LASSO; [6]). [7] proposed to use the socalled elasticnet (EN) penalty. However, LASSO and EN may not be satisfactory either, because it can still gives too many nonzero coefficients. [8] proposed the smoothlyclipped absolute deviation (SCAD) penalty for oracle variable selection. Recently, in regression setting, [9] proposed a new randomeffect model using a gamma scale mixture, which gives various types of penalty, including the normaltype (bellshaped for ridge penalty), cuspedtype (LASSO and SCADtype), and a new (singular) unbounded penalty at the origin. [9] showed that the new unbounded penalty can yield very sparse estimates that are better than LASSO both in prediction and sparsity.
In this paper we use the randomeffect model approach of [9] for sparse PCA (SPCA); the model gives unbounded gains for zero loadings at the origin, so it forces many estimated coefficients to zero. We improve the estimation further by shrinking the singular values from the SVD of the data; the resulting procedure is called supersparse PCA (SSPCA). We provide some simulation studies that indicate that these SPCA methods perform better than existing ones, and illustrate their use using a cancer geneexpression dataset with 21,225 genes. We also show how to modify the ordinary NIPALS algorithm [10] to implement these methods computationally.
Results
Numerical studies
We first perform small simulation studies in order to assess the performance of the proposed sparse PCA methods and compare them against other methods. We generate data matrix X = (X_{1},…,X_{p}) where X_{i }∈ R^{n}, as follows:
where , e_{i }~ MVN(0, ϕI_{n}), I_{n }is the identity matrix of order n and u and e_{i }are independent for all i. This gives the true covariance matrix,
where , Σ_{22 }= ϕI_{p4 }and J_{k }is the k × k matrix of ones. Here we consider cases (n, p) = (80, 20) for n > p and (n, p) = (50, 200) for n <p. Based on 100 simulated data, we compare our new sparse PCA method using the hlikelihood (HL; See Methodology section) with the LASSO and EN penalties for both SPCA and SSPCA methods. We also tried the SCAD method but the results are very similar to LASSO, so we do not report results for SCAD.
From the SVD of Σ we have the true first loading vector v_{1 }= (1/2,1/2,1/2,1/2,0, ..., 0)^{T}. Let be the estimate of v_{1}. To evaluate the performance in estimation of the first loading vector, following [11], we use the sine values of the angle between true loading and estimated loading as the measure of the closeness of two vectors, i.e.
When v_{1 }= , dist (v_{1}, ) = 0.
The summary of estimation performance is given in Table 1. Generally SPCA methods have much better estimation than the ordinary PCA method. Among SPCA methods, the conditionnumber constrained SSPCA method with HL is generally the best, although the improvement over the unconstrained method is not substantial. The improvement performance of HL over LASSO and EN is small when n > p, but it is substantial when n <p and the underlying signal is not very strong ( = 0.5).
Table 1. Simulation results: estimation
To evaluate the performance in variable selection, in Table 2 we report the percentage of selecting the true model (correctly identifying all of the true zero elements), the median number of correctly estimated zeroes divided by the number of true zeroes (true negatives) and incorrect zero estimates divided by the number of true nonzeroes (false negative). Because it does not produce zeroes, the ordinary PCA method never gets the true model and always gets 0 true negatives and 0 false negatives. The HL penalty outperforms the LASSO penalty and generally better than the EN penalty, particularly in identification of the true model. LASSO identifies fewer true negatives compared to HL. The SSPCA methods with the HL and LASSO penalties outperform the corresponding SPCA methods, but here again HL is better than LASSO and EN. The EN performs worst when n <p and the underlying signal is not very strong ( = 0.5).
Table 2. Simulation results: model selection
Finally, as a measure of the prediction power, we compute the test sample variance,
where is the estimated loading using data matrix and X_{test }is the independent test data sets generated from (3) with same sample size n. The results are in Table 3. SPCA methods give better prediction power than the ordinary PCA. Except for the SSPCA method when n <p and the underlying signal is not very strong ( = 0.5), six SPCA methods have similar prediction power.
Table 3. Simulation results: prediction
Analysis of NCI data
In the analysis of microarray data it is often of interest to coregulated genes, since they will point to some common involvement in molecular functions or biological processes or cellular states. PCA is a useful tool for such analyses [14]; since interpretation depends on comparing the relative sizes of the loading vectors, the sparse loadings in SPCA are much easier to interpret than ordinary PCA. Furthermore, the previous section also shows that SPCA has better estimation characteristics than the ordinary PCA. For illustrations we consider the socalled NCI60 microarray data downloaded from the CellMiner program package, National Cancer Institute http://discover.nci.nih.gov/cellminer/ webcite. Only n = 59 of the 60 human cancer cell lines were used in the analysis, as one of the cell lines had missing microarray information. The cell lines consist of 9 different cancers and were used by the Developmental Therapeutics Program of the U.S. National Cancer Institute to screen > 100,000 compounds and natural products. The number of genes is p = 21,225.
Figure 1 in the Additional file 1 gives the plots of the estimates of first loading of 21,225 variables (genes) from five PCA methods, and Table 4 shows the proportion of zero coefficients (< 0.00005) of first loading vector. The ordinary PCA has almost all nonzero loadings (99%); to interpret the results, one must apply a threshold value on the coefficients, but it is not obvious how to choose the threshold. SPCA with LASSO penalty gives only 3% zero loadings, so it is not sparse; HL penalty give more sparse loadings (37.5% zeroes), but the proportion of nonzero loadings are still quite large. SSPCA with LASSO penalty is slightly improves, with 5.4% zeroes, but it is still far from sparsity with more than 20,000 nonzero loadings. Here SSPCA with HL penalty gives the most sparse loadings, with only 6% nonzero loadings, so we have managed to force almost 20,000 loadings to zero.
Additional file 1. The supplementary report documents details on plot of the SSPCA scores, and Gene Ontology analysis of ordinary PCA.
Format: PDF Size: 263KB Download file
This file can be viewed with: Adobe Acrobat Reader
Table 4. Analyses of NCI data: number of zero loadings
To select the number of principal components, we use a permutation approach as follows. First, we randomly permute the expression values within each sample (row) of X to create permuted data X_{perm}. Then PCA is performed on X_{perm }to get the singular values . We perform P = 1000 permutations, from which we can compute the pvalues of the observed d_{k}'s. The number of principal components, k_{0}, is such that the pvalue of d_{k}'s is less than 0.001 when k ≤ k_{0}.
For NCI data, we get k_{0 }= 8 (eight significant principal components). The numbers of nonzero elements in the eight loading vectors (v_{1}…v_{8}) are given in Table 5. We also report the adjusted variance and cumulative adjusted variance as suggested by [7] to get the explained variance properly when the principal component scores are correlated. Note that the adjusted variance is equal to the variance in the ordinary PCA because the principal components of PCA are uncorrelated. Despite the sparsity, in comparison with the ordinary PCA, both of SPCA and SSPCA method give higher cumulative adjusted variance. In fact the SSPCA method gives extremely sparse results, with only 1,260, 681 and 375 nonzero loadings for the first 3 principal components, compared to 13,259, 4,086 and 15,362 for the SPCA method. Up to the third principal component the latter has only slightly larger cumulative variance.
Table 5. Analysis of NCI data: number of zero loadings
Figure 2 in the Additional file 1 shows the scatterplot matrix of the first 3 SSPCA scores. Except for breast cancer, the different cancer types appear in recognizable clusters in the plot. This means that the sparse vector loadings capture some underlying biological differences between the cancers. To find biological explanation, Table 6 shows the Gene Ontology (GO) [12] biological processes enrichment analyses of the nonzero loadings from the first 3 principal components from SSPCA. Only the top 20 most enriched categories with Pvalues < 10^{5 }are shown. The results indicate that the greatest variation in gene expression are associated with structure development, cell proliferation and cell death (apoptosis), and cell adhesion. These processes are closely related to the hallmarks of cancer progression such as angiogenesis (development of blood vessels), abnormal cell growth and eventually metastasis (cell migration made possible by abnormally low cell adhesion).
Table 6. Gene Ontology analysis
Comparative GO analyses from the ordinary PCA are given in the Additional file 1. We use the same number of topranking nonzero loadings as for the SSPCA, which are 1,260, 681 and 375 for the first 3 principal components, respectively. Out of these, the number of overlapping probes between the SSPCA and PCA are 462, 194 and 60. These overlaps are substantially more (up to 8 times more) than expected under random rearrangement. However, there is sufficiently large number of distinct probes in the two methods, so the GO analyses could be different. The Pvalues from the SSPCAbased GO analyses are more significant than those from the ordinary PCA; this may be due to better estimation of the loadings, so that the SSPCA has better power than the ordinary PCA in revealing biologicallyimportant grouping of genes.
Discussions and Conclusions
PCA is one of the most important tools in multivariate statistics, where it has been used, for example, in data reduction or visualization of highdimensional data. The emergence of ultrahigh dimensional data such as in genomics, involving 10,000s of variables but with only a few samples has brought new opportunities for PCA applications. However, there are new challenges also, particularly on the interpretation of results. If we treat PCA quantities such as the loading vectors as parameter estimates, the largepsmalln applications typically produce very noisy estimates. This is obvious since the loading vectors are a statistic derived from the sample covariance matrix, and the latter is not well estimated.
It is well known that improved estimation can come by imposing constraints, and in this case sparsity constraint is natural. As PCA scores capture some underlying biological processes, we do not expect every gene in the genome to be involved. Out of possibly 30,000 genes we can expect only a small fraction, probably less than 1,000, to be involved in a cellular process. Hence sparsity constraint can help in reducing the number of loading parameters to estimate.
Imposing statistical constraints can be achieved by applying a penalty approach as used by the ridge regression or the LASSO methods [6]. In this paper we have investigated a randomeffect model approach using a gamma scale mixture, which leads to a class of penalties that includes the ridge and LASSO penalties as special cases. One significant property is that it can produce unbounded penalties on the origin, which leads to stronger constraints and more sparse estimates. From our results it seems clear that the penalty approach alone is not able to yield sufficiently sparse PCA for highdimensional genomic data. Additionally we also need the shrinkage on the singular values of the data matrix. In simulation studies we show that the proposed methods outperform existing methods both in estimation and model selection. Hence we believe that the new SPCA methods are promising tools for highdimensional data analyses.
For future works, it will be of interest to apply supersparse technique in this paper to locallylinear methods of dimensionality reduction (e.g. [13]]), partialleast squares (PLS) regression and classification methods (e.g. [14]), or other highthroughput data analysis method where dimensionality reduction is used (e.g. [15]).
Methodology
NIPALS algorithm for PCA
Standard algorithms for SVD (e.g. [16]) give the PCA loadings, but if p is large and we only want to obtain a few singular vectors, the computation to obtain the whole set of singular vectors may be impractical. Furthermore, with these algorithms it is not obvious how to impose sparsity on the loadings. [10] described a NIPALS algorithm that works like a power method ([17], p.523) for obtaining the largest eigenvalue of a matrix and its associated eigenvector. The NIPALS algorithm computes only a singular vector at a time, so it is efficient if we only want to extract a few singular vectors. Also the steps are recognizable in regression terms, so the algorithm is immediately amenable to randomeffect modification as needed to obtain the various SPCA methods proposed in this paper.
First we review the ordinary NIPALS algorithm: Set the initial value of z_{1 }as the first column of X, then
1. Find
2. Normalize
3. Find z_{1}: z_{1 }← X^{T}v_{1}
4. Repeat steps 1 to 3 until convergence.
To obtain the secondlargest singular value, first compute residual , then apply the NIPALS algorithm above by replacing X by X_{2}.
Sparse PCA via randomeffect models
To impose sparseness on the PCA loadings we first introduce the regression framework into step 1 of the NIPALS algorithm. Denoting X_{j }as the jth column of X, following [18] we have
where v_{1j }is the jth element of the p × 1 vector v_{1 }(the first loading vector), and ∊_{j }is an error term. If z_{1 }is assumed to be known, the ordinary least square (OLS) estimate for v_{1 }is given by
Consider the penalized leastsquares (PLS) estimation that minimizes
where p_{λ}(·) is a penalty function. For example, p_{λ}(v_{1j}) = λv_{1j} gives LASSO, gives ridge, and gives EN, where λ, λ_{1 }and λ_{2 }are tuning parameters. For the prediction the ridgetype penalty is effective and for sparse estimation the LASSOtype penalty is recommended, so that EN [19] has been recommended as a compromise between the ridge and LASSO methods. [7] proposed to use EN for sparse (SPCA), but it gives less sparse estimates than LASSO.
[9] recently proposed the use of randomeffect models to generate new penalty functions for sparse regression estimation. Suppose that v_{1j }is a random variable such that
where θ is the dispersion parameter and u_{j }follows the gamma distribution with a parameter w and density
such that E(u_{j}) = 1 and Var(u_{j}) = w. This model leads to a rather complex marginal distribution for v_{1j, }characterized by parameter w and with density
This model involves a computationally difficult integral, and its direct optimization is problematic due to the nonconvexity of log f_{w, θ}(v_{1j}). To overcome these problems, first note that the randomeffect model (6) can be written as
where τ_{j }= u_{j}θ and e_{j }~ N(0,1). This is the double hierarchical generalized linear model [20]. With the log link, we have an additive model
This leads to the hlikelihood (HL) of [21]
where
and f_{θ}(v_{1j}u_{j}) and f_{w}(log u_{j}) are the density functions of u_{1j}u_{j }and log u_{j}, respectively. Given (w, ϕ, θ), for the estimation of v_{1}, [9] proposed to use the profile hlikelihood
where solves dh/du = 0.
[9] showed that
with , and the estimate of v_{1 }can be found using the iterative weighted least squares (IWLS) by solving
using and λ = ϕ/θ. In randomeffect model approach, the penalty function p_{λ}(v_{1j}) stems from a probabilistic model . As noted previously the proposed penalty p_{λ}(v_{1j}) is nonconvex. However, by expressing the model for p_{λ}(v_{1j}) hierarchically as (i) v_{1j}u_{j }is normal and (ii) u_{j }is gamma, both models can be fitted by convex GLM optimizations. Thus, the proposed IWLS algorithm overcomes the difficulties of a nonconvex optimization by solving twointerlinked convex optimizations [22].
Figure 1 shows HL penalties p_{λ}(v_{1j}) at w = 0, 2, and 30, and SCAD penalty at λ = 1. The form of the penalty changes from a quadratic shape (w = 0) for ridge regressions to a cusped form (w = 2) for LASSO and then to an unbounded form (w > 2) at the origin. In the case of w > 2, it allows an infinite gain at zero. Bellshaped penalties have been proposed for better prediction (e.g., [23]), and cusped ones for simultaneous variable selection and estimation as in LASSO [6] or SCAD [24]. Until now, however, only finite penalties have been investigated. [9] proposed to use the unbounded penalty with w = 30, which we shall call the HL method. They illustrated the advantage of using this unbounded penalty to enhance sparse coefficient estimation. Singularities in LASSO and SCAD occur as the penalty functions have no derivatives at the origin. However, both penalties have p_{λ}(0) < ∞ and , while the new unbounded penalty has p_{λ}(0) < ∞ and .
Figure 1. HL penalty functions associated with the ridge (w = 0), LASSO (w = 2), SCAD and when w = 30.
In general, the minimizer of the penalized leastsquares (5) can be found using the IWLS (10) with . The derivative for LASSO, SCAD and HL penalties are summarized in Table 7. When v_{1j }= 0, then and the jth element of W_{λ }is not defined. [9] employed a perturbed randomeffect estimate for a small positive δ = 10^{8}. Then, is always defined. As long as δ is small, the diagonal elements of W_{λ,δ }are close to those of W_{λ }and the resulting estimates are nearly identical to those of the original IWLS (10). In this paper, we report = 0 when < 0.00005.
Table 7. The derivatives of the penalty functions.
Other methods for sparse principal component analysis
[7] also exploit the regression property of PCA in order to obtain sparse loadings. They proposed an alternating minimization algorithm to minimize the criterion
for deriving the first sparse loading vector v_{1}. Given θ, this optimization problem becomes a naive elastic net problem for v_{1}. Given v_{1 }, θ can updated from SVD of X^{T}X v_{1}. These two steps are repeated until v_{1 }converges. Following [25], (11) is different from our objective function (5) even when we use the same penalty function. In fact, (5) is very close to the objective function of [26], but we put the normalization constraint of the loading inside iterated procedure so that it could make a different result. In this paper, we used the function spca() in the Rpackage elasticnet for the EN method in the simulation studies.
Conditionnumber constraint for SPCA
As shown in the previous examples, the SPCA approaches above may not produce sufficient sparsity. For the moment suppose n ≥ p; the case where n <p can be dealt with by transposing the data; see the note below. From (2) we have the eigenvalue decomposition of the sample covariance matrix as
where Λ = diag(l_{1}, ..., l_{p }and for i = 1, ..., p is the eigenvalues of S_{X }in nonincreasing order (l_{1 }≥ … ≥ l_{p }≥ 0). Let the p × 1 random vectors x_{1}, …, x_{n }be rows of X that have zero mean vector and true covariance matrix Σ with the nonincreasing eigenvalues, λ_{1 }≥ ... ≥ λ_{p}. When our goal is to estimate Σ, the sample covariance matrix S_{X }can be used. Many applications require a covariance estimate that is not only invertible but also wellconditioned. An immediate problem arises when n <p, where the estimate S_{X }is singular. Even when n > p, the eigenstructure tends to be systematically distorted unless p/n is small [27], resulting in illconditioned estimator for Σ.
[28] showed that the eigenvalues of S_{X }are more dispersed than those of the true covariance matrix, i.e. l_{1 }tends to be larger than λ_{1 }and l_{p }tends to be smaller than λ_{p}. To overcome this difficulty, [29] proposed a constraint on the condition number to achieve a better covariance estimation. The optimization problem with the conditionnumber constraint can be formulated as
where A ≼ B denotes that B  A is positive semidefinite and t > 0. Given κ_{max}, for t [29] proposed to use
where α ∈ {1, ... p} is the largest index such that 1/l_{α }<t* and β ∈ {1,..., p} is the smallest index such that 1/l_{β }> κ_{max}t*. Their covariance estimators are
where the eigenvalues . To estimate the shrinkage parameter κ_{max}, they proposed to use the Kfold cross validation.
From (2) and (13), we can reconstruct X^{* }with same singular vectors but shrunken singular values, i.e.
where D* is n × p matrix with (i, i)th diagonal element . Thus, for conditionnumber constrained PCA we use X* instead of the original data matrix X. As the procedure yields extremely sparse loading vectors, we call it SSPCA, for supersparse PCA.
[29] considered the estimation of covariance matrix when p is not very large. However, for large p such as over 10,000 in gene expression data, it becomes computationally too intensive. Because the aim is to obtain a few singular vectors, not whole p singular vectors, when p > n in this paper we propose to apply the above algorithm to X^{T }and the results are transformed back appropriately.
Modified NIPALS algorithm for SPCA and SSPCA
For SPCA we replace step 1 in the NIPALS algorithm by
where is defined in (9). For SSPCA we also apply this modified step, but replace X by X* defined in (14).
Tuning parameter selection
To complete the proposed algorithm we need to estimate the tuning parameters θ and λ = ϕ/θ in (9) and (10), respectively. First we note that from (7), marginally, v_{1 }has mean zero and variance θ, so we use , where is the estimated first loading vector from ordinary PCA and is the sample mean of . We use Kfold crossvalidation for λ. Following [30], we select λ which maximizes the test sample variance
where is the estimated loadings from the kth training sets (the whole data without the kth validation set) and S_{X[k] }is the sample variance based on the kth validation set. For the numerical studies in Section we use K = 5.
Authors' contributions
The first two authors (DHL and WJL) contributed equally to this work. YJL and YP conceived the study and wrote the manuscript, DHL and WJL performed data analysis and wrote the manuscript. All authors read and approved the final manuscript.
Acknowledgements
This research is partially funded by a grant for the Swedish Science Foundation.
References

Alter O, Brown P, Botstein D: Singular value decomposition for genomewide expression data processing and modeling.
Proceedings of the National Academy of Science 2000, 97:1010110106. Publisher Full Text

Kuruvilla F, Park P, Schreiber S: Vector algebra in the analysis of genomewide expression data.
Genome Biol Epub 2002, 3(3):RESEARCH0011.111. BioMed Central Full Text

Sharov A, Dudekula D, Ko M: A webbased tool for principal component and significance analysis of microarray data.
Bioinformatics 2005, 21(10):25489. PubMed Abstract  Publisher Full Text

Scholz M, Selbig J: Visualization and analysis of molecular data.
Methods Mol Biol 2005, 358:87104. Publisher Full Text

Jolliffe I, Trendafilov N, Uddin M: A modified principal component technique base on the Lasso.
Journal of Computational and Graphical Statistics 2003, 12:531547. Publisher Full Text

Tibshirani R: Regression shrinkage and selection via the LASSO.
Journal of the Royal Statistical Society, series B 1996, 58:267288.

Zou H, Hastie T, Tibshirani R: Sparse principal components analysis.
Journal of Computational and Graphical Statistics 2006, 15:265286. Publisher Full Text

Fan J, Li R: Variable selection via nonconcave penalized likelihood and its oracle properties.
Journal American Statistical Association 2001, 96:13481360. Publisher Full Text

Lee Y, Oh H: A new randomeffect model for sparse variable selection.

Höskuldsson A: PLS regression methods.
Journal of Chemometrics 1988, 2:211228. Publisher Full Text

Johnstone I, Lu A: On consistency and sparsity for principal components analysis in high dimensions.
Journal of American Statistical Association 2009, 104:682693. Publisher Full Text

Consortium GO: Gene ontology: tool for the unification of biology.
Nature Genetics 2000, 25:2529. PubMed Abstract  Publisher Full Text

Roweis S, Saul L: Nonlinear dimensionality reduction by locally linear embedding.
Science 2000, 290:23232326. PubMed Abstract  Publisher Full Text

Boulesteix A: PLS Dimension Reduction for Classification with Microarray Data.
Statistical Applications in Genetics and Molecular Biology 2004, 3:33. Publisher Full Text

Nueda M, Conesa A, Westerhuis J, Hoefsloot H, Smilde A, Talon M, Ferrer A: Discovering gene expression patterns in time course microarray experiments by ANOVASCA.
Bioinformatics 2007, 23:17921800. PubMed Abstract  Publisher Full Text

Golub G, Reinsch C: Singular value decomposition and least squares solutions. In Handbook for Automatic Computation II: Linear Algebra. Edited by Householder A, Bauer F. New York: SpringerVerlag; 1971.

Horn R, Johnson C: Matrix analysis. Cambridge: Cambridge university press; 1985.

Salim A, Pawitan Y, Bond K: Modelling association between two irregularly observed spatiotemporal processes by using maximum covariance analysis.

Zou H, Hastie T: Regularization and variable selection via the elastic net.
Journal of the Royal Statistical Society, series B 2005, 67:301320. Publisher Full Text

Lee Y, Nelder J: Double hierarchical generalized linear models (with discussion).

Lee Y, Nelder J: Hierarchical generalized linear models (with discussion).
Journal of the Royal Statistical Society, series B 1996, 58:619678.

Lee Y, Nelder J, Pawitan Y: Matrix analysisGeneralized Linear Models With Random Effects: Unified Analysis via HLikelihood. London: Chapman and Hall; 2006.

Efron B, Morris C: Data analysis using Stein's estimator and its generalizations.
Journal of American Statistical Association 1975, 70:311319. Publisher Full Text

Fan J: Comments on "Wavelets in statistics: A review" by A. Antoniadis.
Journal of Italian Statistical Association 1997, 6:131138. Publisher Full Text

Witten D, Tibshirani R, Haste T: A penalized matrix decomposition, with application to sparse principal components and canonical correlation analysis.
Biostatistics 2009, 10:515534. PubMed Abstract  Publisher Full Text

Shen H, Huang J: Sparse principal component analysis via regularized low rank matrix approximation.
Journal of Multivariate Analysis 2008, 99:10151034. Publisher Full Text

Dempster A: Covariance selection.
Biometrics 1972, 28:157175. Publisher Full Text

Ledoit O, Wolf M: A wellconditioned estimator for largedimensional covariance matrices.
Journal of Multivariate Analysis 2004, 88:365411. Publisher Full Text

Won J, Lim J, Kim S, Rajaratnam B: Maximum likelihood covariance estimation with a conditionnumber constraint.

Parkomenko E, Tritchler D, Beyene J: Sparse canonical correlation analysis with application to genomic data integration.
Statistical Applications in Genetics and Molecular Biology 2009., 8