PLoS ONE · 2014 · 338 citations · 16 references
ComputingBioinformaticsBiostatisticsComputational BiologyGenomic Data AnalysisGenomicsDimensionality ReductionHigh-throughput GenotypingPrincipal Component AnalysisPrincipal ComponentsSingle-nucleotide Polymorphism Variation
Principal component analysis (PCA) is routinely used to analyze genome-wide single-nucleotide polymorphism (SNP) data, for detecting population structure and potential outliers. However, the size of SNP datasets has increased immensely in recent years and PCA of large datasets has become a time consuming task. We have developed flashpca, a highly efficient PCA implementation based on randomized algorithms, which delivers identical accuracy in extracting the top principal components compared with existing tools, in substantially less time. We demonstrate the utility of flashpca on both HapMap3 and on a large Immunochip dataset. For the latter, flashpca performed PCA of 15,000 individuals up to 125 times faster than existing tools, with identical results, and PCA of 150,000 individuals using flashpca completed in 4 hours. The increasing size of SNP datasets will make tools such as flashpca essential as traditional approaches will not adequately scale. This approach will also help to scale other applications that leverage PCA or eigen-decomposition to substantially larger datasets.
16
R: A Language and Environment for Statistical Computing
R Core Team · 2000 · 353K citations · Full text
Natural Sciences, Computer Science, Statistical Computing +10
Principal components analysis corrects for stratification in genome-wide association studies
Alkes L. Price, Nick J. Patterson, Robert M. Plenge et al. · Nature Genetics · 2006 · 10.7K citations
Population Structure and Eigenanalysis
Nick Patterson, Alkes L. Price, David Reich · PLoS Genetics · 2006 · 5.7K citations · Full text