|
A library for working with phylogenetic and population genetic data.
v0.32.0
|
|
Go to the documentation of this file. 1 #ifndef GENESIS_UTILS_MATH_PCA_H_
2 #define GENESIS_UTILS_MATH_PCA_H_
157 size_t max_iterations = 1000
183 size_t components = 0,
190 #endif // include guard
@ kSSCP
Do not perform any standardization prior to performing the PCA.
std::vector< double > eigenvalues
Helper structure used for the eigenvalue decomposition in reduce_to_tridiagonal_matrix() and tridiago...
std::vector< double > eigenvalues
@ kCovariance
Standardize the mean, but not the variance of the data before performing the PCA.
Matrix< double > projection
Container namespace for all symbols of genesis in order to keep them separate when used as a library.
PcaData principal_component_analysis(Matrix< double > const &data, size_t components, PcaStandardization standardization)
Perfom a Principal Component Analysis on a given data Matrix.
std::vector< double > intermediates
Matrix< double > eigenvectors
TridiagonalDecompositionData reduce_to_tridiagonal_matrix(Matrix< double > &data)
Triangular decomposition of a symmetric matrix.
Helper stucture that collects the output of principal_component_analysis().
PcaStandardization
Setting for principal_component_analysis() to determine which form of standardization of the data to ...
@ kCorrelation
Standardize the mean and variance of the data before performing the PCA.
void tridiagonal_ql_algorithm(Matrix< double > &data, TridiagonalDecompositionData &tri, size_t max_iterations)
Reduce a symmetric matrix to a symmetric tridiagonal matrix.