#ifndef ROOT_TMVA_VariablePCATransform
#define ROOT_TMVA_VariablePCATransform
#include "TPrincipal.h"
#ifndef ROOT_TMVA_VariableTransformBase
#include "TMVA/VariableTransformBase.h"
#endif
namespace TMVA {
class VariablePCATransform : public VariableTransformBase {
public:
VariablePCATransform( std::vector<TMVA::VariableInfo>& );
virtual ~VariablePCATransform( void );
void ApplyTransformation( Types::ESBType type = Types::kMaxSBType ) const;
Bool_t PrepareTransformation( TTree* inputTree );
void WriteTransformationToStream ( std::ostream& ) const;
void ReadTransformationFromStream( std::istream& );
std::vector<TString>* GetTransformationStrings( Types::ESBType type = Types::kMaxSBType ) const;
virtual void MakeFunction( std::ostream& fout, const TString& fncName, Int_t part );
private:
void CalculatePrincipalComponents( TTree* originalTree );
void X2P( const Double_t*, Double_t*, Int_t index ) const;
TPrincipal* fPCA[2];
TVectorD* fMeanValues[2];
TMatrixD* fEigenVectors[2];
ClassDef(VariablePCATransform,0)
};
}
#endif
Last change: Wed Jun 25 08:48:59 2008
Last generated: 2008-06-25 08:48
This page has been automatically generated. If you have any comments or suggestions about the page layout send a mail to ROOT support, or contact the developers with any questions or problems regarding ROOT.