//! More...
Classes | |
| class | op_princomp_cov |
Functions | |
| template<typename eT > | |
| static void | op_princomp_cov::direct_princomp_cov (Mat< eT > &coeff_out, Col< eT > &latent_out, Col< eT > &explained_out, const Mat< eT > &in) |
| //! principal component analysis of a covariance matrix -- 3 arguments version //! computation is done via singular value decomposition //! coeff_out -> principal component coefficients //! latent_out -> principal component variances //! explained_out -> percentage of the total variance explained by each principal component | |
| template<typename eT > | |
| static void | op_princomp_cov::direct_princomp_cov (Mat< eT > &coeff_out, Col< eT > &latent_out, const Mat< eT > &in) |
| //! principal component analysis of a covariance matrix -- 2 arguments version //! computation is done via singular value decomposition //! coeff_out -> principal component coefficients //! latent_out -> principal component variances | |
| template<typename eT > | |
| static void | op_princomp_cov::direct_princomp_cov (Mat< eT > &coeff_out, const Mat< eT > &in) |
| //! principal component analysis of a covariance matrix -- 1 argument version //! computation is done via singular value decomposition //! coeff_out -> principal component coefficients | |
| template<typename T > | |
| static void | op_princomp_cov::direct_princomp_cov (Mat< std::complex< T > > &coeff_out, Col< T > &latent_out, Col< T > &explained_out, const Mat< std::complex< T > > &in) |
| //! principal component analysis of a covariance matrix -- 3 arguments complex version //! computation is done via singular value decomposition //! coeff_out -> principal component coefficients //! latent_out -> principal component variances //! explained_out -> percentage of the total variance explained by each principal component | |
| template<typename T > | |
| static void | op_princomp_cov::direct_princomp_cov (Mat< std::complex< T > > &coeff_out, Col< T > &latent_out, const Mat< std::complex< T > > &in) |
| //! principal component analysis of a covariance matrix -- 2 arguments complex version //! computation is done via singular value decomposition //! coeff_out -> principal component coefficients //! latent_out -> principal component variances | |
| template<typename T > | |
| static void | op_princomp_cov::direct_princomp_cov (Mat< std::complex< T > > &coeff_out, const Mat< std::complex< T > > &in) |
| //! principal component analysis of a covariance matrix -- 1 argument complex version //! computation is done via singular value decomposition //! coeff_out -> principal component coefficients | |
| template<typename T1 > | |
| static void | op_princomp_cov::apply (Mat< typename T1::elem_type > &out, const Op< T1, op_princomp_cov > &in) |
//!
| void op_princomp_cov::direct_princomp_cov | ( | Mat< eT > & | coeff_out, | |
| Col< eT > & | latent_out, | |||
| Col< eT > & | explained_out, | |||
| const Mat< eT > & | in | |||
| ) | [inline, static, inherited] |
//! principal component analysis of a covariance matrix -- 3 arguments version //! computation is done via singular value decomposition //! coeff_out -> principal component coefficients //! latent_out -> principal component variances //! explained_out -> percentage of the total variance explained by each principal component
Definition at line 33 of file op_princomp_cov_meat.hpp.
References arma_print(), cov(), Mat< eT >::reset(), sum(), and svd().
{
arma_extra_debug_sigprint();
// computation of the covariance matrix
const Mat<eT> in_cov = cov(in);
// singular value decomposition
Mat<eT> U;
const bool svd_ok = svd(U, latent_out, coeff_out, in_cov);
if(svd_ok == false)
{
arma_print("princomp_cov(): singular value decomposition failed");
coeff_out.reset();
latent_out.reset();
explained_out.reset();
return;
}
explained_out = (eT(100) * latent_out) / sum(latent_out);
}
| void op_princomp_cov::direct_princomp_cov | ( | Mat< eT > & | coeff_out, | |
| Col< eT > & | latent_out, | |||
| const Mat< eT > & | in | |||
| ) | [inline, static, inherited] |
//! principal component analysis of a covariance matrix -- 2 arguments version //! computation is done via singular value decomposition //! coeff_out -> principal component coefficients //! latent_out -> principal component variances
Definition at line 75 of file op_princomp_cov_meat.hpp.
References arma_print(), cov(), Mat< eT >::reset(), and svd().
{
arma_extra_debug_sigprint();
// computation of the covariance matrix
const Mat<eT> in_cov = cov(in);
// singular value decomposition
Mat<eT> U;
const bool svd_ok = svd(U, latent_out, coeff_out, in_cov);
if(svd_ok == false)
{
arma_print("princomp_cov(): singular value decomposition failed");
coeff_out.reset();
latent_out.reset();
return;
}
}
| void op_princomp_cov::direct_princomp_cov | ( | Mat< eT > & | coeff_out, | |
| const Mat< eT > & | in | |||
| ) | [inline, static, inherited] |
//! principal component analysis of a covariance matrix -- 1 argument version //! computation is done via singular value decomposition //! coeff_out -> principal component coefficients
Definition at line 113 of file op_princomp_cov_meat.hpp.
References arma_print(), cov(), Mat< eT >::reset(), and svd().
Referenced by apply(), and princomp_cov().
{
arma_extra_debug_sigprint();
// computation of the covariance matrix
const Mat<eT> in_cov = cov(in);
// singular value decomposition
Mat<eT> U;
Col<eT> s;
const bool svd_ok = svd(U, s, coeff_out, in_cov);
if(svd_ok == false)
{
arma_print("princomp_cov(): singular value decomposition failed");
coeff_out.reset();
return;
}
}
| void op_princomp_cov::direct_princomp_cov | ( | Mat< std::complex< T > > & | coeff_out, | |
| Col< T > & | latent_out, | |||
| Col< T > & | explained_out, | |||
| const Mat< std::complex< T > > & | in | |||
| ) | [inline, static, inherited] |
//! principal component analysis of a covariance matrix -- 3 arguments complex version //! computation is done via singular value decomposition //! coeff_out -> principal component coefficients //! latent_out -> principal component variances //! explained_out -> percentage of the total variance explained by each principal component
Definition at line 152 of file op_princomp_cov_meat.hpp.
References arma_print(), cov(), Mat< eT >::reset(), sum(), and svd().
{
arma_extra_debug_sigprint();
typedef std::complex<T> eT;
// computation of the covariance matrix
const Mat<eT> in_cov = cov(in);
// singular value decomposition
Mat<eT> U;
const bool svd_ok = svd(U, latent_out, coeff_out, in_cov);
if(svd_ok == false)
{
arma_print("princomp_cov(): singular value decomposition failed");
coeff_out.reset();
latent_out.reset();
explained_out.reset();
return;
}
explained_out = (T(100) * latent_out) / sum(latent_out);
}
| void op_princomp_cov::direct_princomp_cov | ( | Mat< std::complex< T > > & | coeff_out, | |
| Col< T > & | latent_out, | |||
| const Mat< std::complex< T > > & | in | |||
| ) | [inline, static, inherited] |
//! principal component analysis of a covariance matrix -- 2 arguments complex version //! computation is done via singular value decomposition //! coeff_out -> principal component coefficients //! latent_out -> principal component variances
Definition at line 196 of file op_princomp_cov_meat.hpp.
References arma_print(), cov(), Mat< eT >::reset(), and svd().
{
arma_extra_debug_sigprint();
typedef std::complex<T> eT;
// computation of the covariance matrix
const Mat<eT> in_cov = cov(in);
// singular value decomposition
Mat<eT> U;
const bool svd_ok = svd(U, latent_out, coeff_out, in_cov);
if(svd_ok == false)
{
arma_print("princomp_cov(): singular value decomposition failed");
coeff_out.reset();
latent_out.reset();
return;
}
}
| void op_princomp_cov::direct_princomp_cov | ( | Mat< std::complex< T > > & | coeff_out, | |
| const Mat< std::complex< T > > & | in | |||
| ) | [inline, static, inherited] |
//! principal component analysis of a covariance matrix -- 1 argument complex version //! computation is done via singular value decomposition //! coeff_out -> principal component coefficients
Definition at line 236 of file op_princomp_cov_meat.hpp.
References arma_print(), cov(), Mat< eT >::reset(), and svd().
{
arma_extra_debug_sigprint();
typedef std::complex<T> eT;
// computation of the covariance matrix
const Mat<eT> in_cov = cov(in);
// singular value decomposition
Mat<eT> U;
Col<T> s;
const bool svd_ok = svd(U, s, coeff_out, in_cov);
if(svd_ok == false)
{
arma_print("princomp_cov(): singular value decomposition failed");
coeff_out.reset();
return;
}
}
| void op_princomp_cov::apply | ( | Mat< typename T1::elem_type > & | out, | |
| const Op< T1, op_princomp_cov > & | in | |||
| ) | [inline, static, inherited] |
Definition at line 271 of file op_princomp_cov_meat.hpp.
References direct_princomp_cov(), unwrap_check< T1 >::M, and Op< T1, op_type >::m.
{
arma_extra_debug_sigprint();
typedef typename T1::elem_type eT;
const unwrap_check<T1> tmp(in.m, out);
const Mat<eT>& A = tmp.M;
op_princomp_cov::direct_princomp_cov(out, A);
}