bpp-core3  3.0.0
bpp::CorrespondenceAnalysis Class Reference

This class allows to perform a correspondence analysis. More...

#include <Bpp/Numeric/Stat/Mva/CorrespondenceAnalysis.h>

+ Inheritance diagram for bpp::CorrespondenceAnalysis:
+ Collaboration diagram for bpp::CorrespondenceAnalysis:

Public Member Functions

 CorrespondenceAnalysis (const Matrix< double > &data, unsigned int nbAxes, double tol=0.0000001, bool verbose=true)
 Build a new CorrespondenceAnalysis object. More...
 
virtual ~CorrespondenceAnalysis ()
 
CorrespondenceAnalysisclone () const
 Create a copy of this object and send a pointer to it. More...
 
double getSumOfAllValues () const
 
void setData (const Matrix< double > &matrix, const std::vector< double > &rowWeights, const std::vector< double > &colWeights, unsigned int nbAxes, double tol=0.0000001, bool verbose=true)
 Set the data and perform computations. More...
 
std::vector< double > computeVariancePercentagePerAxis ()
 
size_t getNbOfKeptAxes () const
 
const std::vector< double > getRowWeights () const
 
const std::vector< double > getColumnWeights () const
 
const std::vector< double > & getEigenValues () const
 
const RowMatrix< double > & getRowCoordinates () const
 
const RowMatrix< double > & getColCoordinates () const
 
const RowMatrix< double > & getPrincipalAxes () const
 
const RowMatrix< double > & getPrincipalComponents () const
 

Private Attributes

double n_
 

Detailed Description

This class allows to perform a correspondence analysis.

All values in the input table have to be non-negative. The DualityDiagram class, core class of a multivariate analysis, is called internally.

The code of this class is deeply inspired from the R code of the dudi.coa function available in the ade4 package.

Definition at line 23 of file CorrespondenceAnalysis.h.

Constructor & Destructor Documentation

◆ CorrespondenceAnalysis()

CorrespondenceAnalysis::CorrespondenceAnalysis ( const Matrix< double > &  data,
unsigned int  nbAxes,
double  tol = 0.0000001,
bool  verbose = true 
)

Build a new CorrespondenceAnalysis object.

Parameters
dataThe input data (a RowMatrix) to analyse.
nbAxesThe number of kept axes during the analysis.
tolTolerance threshold for null eigenvalues (a value less than tol times the first one is considered as null)
verboseShould warnings be dispayed.
Exceptions
Exceptionif an error occured.

Definition at line 13 of file CorrespondenceAnalysis.cpp.

References bpp::Matrix< Scalar >::getNumberOfColumns(), bpp::Matrix< Scalar >::getNumberOfRows(), bpp::MatrixTools::hadamardMult(), n_, bpp::MatrixTools::scale(), and bpp::DualityDiagram::setData().

Referenced by clone().

◆ ~CorrespondenceAnalysis()

virtual bpp::CorrespondenceAnalysis::~CorrespondenceAnalysis ( )
inlinevirtual

Definition at line 45 of file CorrespondenceAnalysis.h.

Member Function Documentation

◆ clone()

CorrespondenceAnalysis* bpp::CorrespondenceAnalysis::clone ( ) const
inlinevirtual

Create a copy of this object and send a pointer to it.

Returns
A pointer toward the copy object.

Implements bpp::Clonable.

Definition at line 47 of file CorrespondenceAnalysis.h.

References CorrespondenceAnalysis().

◆ computeVariancePercentagePerAxis()

std::vector<double> bpp::DualityDiagram::computeVariancePercentagePerAxis ( )
inherited

◆ getColCoordinates()

const RowMatrix<double>& bpp::DualityDiagram::getColCoordinates ( ) const
inlineinherited

Definition at line 110 of file DualityDiagram.h.

References bpp::DualityDiagram::colCoord_.

◆ getColumnWeights()

const std::vector<double> bpp::DualityDiagram::getColumnWeights ( ) const
inlineinherited

Definition at line 107 of file DualityDiagram.h.

References bpp::DualityDiagram::colWeights_.

◆ getEigenValues()

const std::vector<double>& bpp::DualityDiagram::getEigenValues ( ) const
inlineinherited

Definition at line 108 of file DualityDiagram.h.

References bpp::DualityDiagram::eigenValues_.

◆ getNbOfKeptAxes()

size_t bpp::DualityDiagram::getNbOfKeptAxes ( ) const
inlineinherited

Definition at line 105 of file DualityDiagram.h.

References bpp::DualityDiagram::nbAxes_.

◆ getPrincipalAxes()

const RowMatrix<double>& bpp::DualityDiagram::getPrincipalAxes ( ) const
inlineinherited

Definition at line 111 of file DualityDiagram.h.

References bpp::DualityDiagram::ppalAxes_.

◆ getPrincipalComponents()

const RowMatrix<double>& bpp::DualityDiagram::getPrincipalComponents ( ) const
inlineinherited

Definition at line 112 of file DualityDiagram.h.

References bpp::DualityDiagram::ppalComponents_.

◆ getRowCoordinates()

const RowMatrix<double>& bpp::DualityDiagram::getRowCoordinates ( ) const
inlineinherited

Definition at line 109 of file DualityDiagram.h.

References bpp::DualityDiagram::rowCoord_.

◆ getRowWeights()

const std::vector<double> bpp::DualityDiagram::getRowWeights ( ) const
inlineinherited

Definition at line 106 of file DualityDiagram.h.

References bpp::DualityDiagram::rowWeights_.

◆ getSumOfAllValues()

double bpp::CorrespondenceAnalysis::getSumOfAllValues ( ) const
inline

Definition at line 50 of file CorrespondenceAnalysis.h.

References n_.

◆ setData()

void DualityDiagram::setData ( const Matrix< double > &  matrix,
const std::vector< double > &  rowWeights,
const std::vector< double > &  colWeights,
unsigned int  nbAxes,
double  tol = 0.0000001,
bool  verbose = true 
)
inherited

Set the data and perform computations.

Parameters
matrixThe input data to analyse.
rowWeightsA vector of values specifying the weights of rows.
colWeightsA vector of values specifying the weights of columns.
nbAxesThe number of kept axes during the analysis.
tolTolerance threshold for null eigenvalues (a value less than tol times the first one is considered as null)
verboseShould warnings be dispayed.
Exceptions
Exceptionif an error occured.

Definition at line 66 of file DualityDiagram.cpp.

References bpp::DualityDiagram::check_(), bpp::DualityDiagram::colWeights_, bpp::DualityDiagram::compute_(), bpp::DualityDiagram::nbAxes_, and bpp::DualityDiagram::rowWeights_.

Referenced by bpp::DualityDiagram::clone(), CorrespondenceAnalysis(), and bpp::PrincipalComponentAnalysis::PrincipalComponentAnalysis().

Member Data Documentation

◆ n_

double bpp::CorrespondenceAnalysis::n_
private

Definition at line 27 of file CorrespondenceAnalysis.h.

Referenced by CorrespondenceAnalysis(), and getSumOfAllValues().


The documentation for this class was generated from the following files: