A toolkit for working with phylogenetic data.
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Pages
pca.hpp File Reference
#include "genesis/utils/math/matrix.hpp"
#include <vector>

Go to the source code of this file.


struct  PcaData
 Helper stucture that collects the output of principal_component_analysis(). More...
struct  TridiagonalDecompositionData
 Helper structure used for the eigenvalue decomposition in reduce_to_tridiagonal_matrix() and tridiagonal_ql_algorithm(). See there for details. More...


 Container namespace for all symbols of genesis in order to keep them separate when used as a library.


enum  PcaStandardization { kCorrelation, kCovariance, kSSCP }
 Setting for principal_component_analysis() to determine which form of standardization of the data to use prior to perfoming the PCA. More...


PcaData principal_component_analysis (Matrix< double > const &data, size_t components=0, PcaStandardization standardization=PcaStandardization::kCorrelation)
 Perfom a Principal Component Analysis on a given data Matrix. More...
TridiagonalDecompositionData reduce_to_tridiagonal_matrix (Matrix< double > &data)
 Triangular decomposition of a symmetric matrix. More...
void tridiagonal_ql_algorithm (Matrix< double > &data, TridiagonalDecompositionData &tri, size_t max_iterations=1000)
 Reduce a symmetric matrix to a symmetric tridiagonal matrix. More...