yat
0.20.3pre
|
Principal Component Analysis. More...
#include <yat/utility/PCA.h>
Public Member Functions | |
PCA (const MatrixBase &) | |
PCA (MatrixMutable &&M) | |
const Vector & | eigenvalues (void) const |
Returns eigenvalues. More... | |
const Matrix & | eigenvectors (void) const |
Get all eigenvectors in a Matrix. More... | |
Matrix | projection (const MatrixBase &) const |
Principal Component Analysis.
Class performing PCA using SVD. This class assumes that the columns corresponds to the dimenension of the problem. That means if data has dimension NxM (M=columns) the number of principal-axes will equal M-1. When projecting data into this space, all Nx1 vectors will have dimension Mx1. Hence the projection will have dimension MxM where each column is a point in the new space.
|
explicit |
Constructor taking the data-matrix as input. No row-centering should have been performed and no products.
|
explicit |
Same as PCA(const Matrix&) but moves M rather than copy.
const Vector& theplu::yat::utility::PCA::eigenvalues | ( | void | ) | const |
Returns eigenvalues.
const Matrix& theplu::yat::utility::PCA::eigenvectors | ( | void | ) | const |
Get all eigenvectors in a Matrix.
Matrix theplu::yat::utility::PCA::projection | ( | const MatrixBase & | ) | const |
This function will project data onto the new coordinate-system where the axes are the calculated eigenvectors. This means that PCA must have been run before this function can be used! Output is presented as coordinates in the N-dimensional room spanned by the eigenvectors.