1.8.0
CCC
 
Loading...
Searching...
No Matches
gstlrn::Table Class Reference

#include <Table.hpp>

Inheritance diagram for gstlrn::Table:
gstlrn::MatrixDense gstlrn::ASerializable gstlrn::AMatrix gstlrn::AStringable gstlrn::ICloneable

Detailed Description

Stores an array of values as a Table, i.e. a MatrixDense where rows and columns can be optionally decorated

Public Member Functions

 Table (Id nrow=0, Id ncol=0, bool skip_title=false, bool skip_description=false)
 
 Table (const Table &m)
 
Tableoperator= (const Table &m)
 
virtual ~Table ()
 
void reset (Id nrows, Id ncols) override
 Cloneable interface.
 
String toString (const AStringFormat *strfmt=nullptr) const override
 
 getRange (Id icol) const
 
 getAllRange () const
 
void plot (Id isimu) const
 
void setColumnNames (const VectorString &colNames)
 
void setColumnName (Id icol, const String &name)
 
void setRowNames (const VectorString &rowNames)
 
void setRowName (Id irow, const String &name)
 
VectorString getColumnNames () const
 
VectorString getRowNames () const
 
String getColumnName (Id icol) const
 
String getRowName (Id irow) const
 
const StringgetTitle () const
 
void setTitle (const String &title)
 
void setSkipDescription (bool skipDescription)
 
void setSkipTitle (bool skipTitle)
 
- Public Member Functions inherited from gstlrn::MatrixDense
 MatrixDense (Id nrow=0, Id ncol=0)
 
 MatrixDense (const MatrixDense &r)
 
 MatrixDense (const AMatrix &r)
 
MatrixDenseoperator= (const MatrixDense &r)
 
virtual ~MatrixDense ()
 
bool isDense () const override
 Cloneable interface.
 
bool isSparse () const override
 
double getValue (Id irow, Id icol) const override
 
void setValue (Id irow, Id icol, double value) override
 
void updValue (Id irow, Id icol, const EOperator &oper, double value) override
 
void setColumn (Id icol, const 1 &tab) override
 
void setColumnToConstant (Id icol, double value) override
 
void setRow (Id irow, const 1 &tab) override
 
void setRowToConstant (Id irow, double value) override
 
void setDiagonal (const 1 &tab) override
 
void setDiagonalToConstant (double value=1.) override
 
void addScalar (double v) override
 
void addScalarDiag (double v) override
 
void prodScalar (double v) override
 
void fill (double value) override
 
void multiplyRow (const 1 &vec) override
 
void multiplyColumn (const 1 &vec) override
 
void divideRow (const 1 &vec) override
 
void divideColumn (const 1 &vec) override
 
bool mustBeSymmetric () const override
 
 getRow (Id irow) const override
 
 getColumn (Id icol) const override
 
void prodMatMatInPlace (const AMatrix *x, const AMatrix *y, bool transposeX=false, bool transposeY=false) override
 
void prodNormMatMatInPlace (const AMatrix *a, const AMatrix *m, bool transpose=false) override
 
void prodNormMatVecInPlace (const AMatrix *a, const 1 &vec, bool transpose=false) override
 
void prodNormMatInPlace (const AMatrix *a, bool transpose=false) override
 
void linearCombination (double val1, const AMatrix *mat1, double val2=1., const AMatrix *mat2=nullptr, double val3=1., const AMatrix *mat3=nullptr) override
 
void addMat (const AMatrix &y, double cx=1., double cy=1.) override
 
const & getEigenValues () const
 
const MatrixSquaregetEigenVectors () const
 
Id invert2 (MatrixDense &res) const
 
void unsample (const AMatrix *A, const 1 &rowFetch, const 1 &colFetch, bool flagInvertRow=false, bool flagInvertCol=false)
 Set the values contained in 'A' into the current matrix.
 
MatrixDense compressMatLC (const MatrixDense &matLC, bool transpose=false)
 Perform the compressing product, according to 'transpose'.
 
void addRow (Id nrow_added=1)
 
void addColumn (Id ncolumn_added=1)
 
constvect getColumnPtr (Id icol) const
 
constvect getViewOnColumn (Id icol) const
 
vect getViewOnColumnModify (Id icol)
 
Eigen::Map< const Eigen::MatrixXd > eigenMat () const
 
Eigen::Map< Eigen::MatrixXd > eigenMat ()
 
- Public Member Functions inherited from gstlrn::AMatrix
 AMatrix (Id nrow=0, Id ncol=0)
 
 AMatrix (const AMatrix &m)
 
AMatrixoperator= (const AMatrix &m)
 
virtual ~AMatrix ()
 
virtual bool isSquare (bool printWhyNot=false) const
 
virtual bool isSymmetric (double eps=EPSILON10, bool printWhyNot=false) const
 
virtual void resetFromValue (Id nrows, Id ncols, double value)
 Reset the matrix to new dimensions and fill with a new value.
 
virtual void resetFromArray (Id nrows, Id ncols, const double *tab, bool byCol=true)
 Reset the matrix from an array of double values.
 
virtual void resetFromVD (Id nrows, Id ncols, const 1 &tab, bool byCol=true)
 Reset the matrix from a vector of double values.
 
virtual void resetFromVVD (const 1 &tab, bool byCol=true)
 Reset the matrix from an array of double values.
 
virtual void transposeInPlace ()
 
virtual AMatrixtranspose () const
 
virtual NF_Triplet getMatrixToTriplet (Id shiftRow=0, Id shiftCol=0) const
 
void clear ()
 
void resize (Id nrows, Id ncols)
 Resize the matrix to new dimensions (this method doesn't change the storage type)
 
bool isValid (Id irow, Id icol, bool printWhyNot=false) const
 
bool isIdentity (bool printWhyNot=false) const
 
void addValue (Id irow, Id icol, double value)
 
bool isSame (const AMatrix &m, double eps=EPSILON4, bool printWhyNot=false)
 
bool isSameSize (const AMatrix &m) const
 
bool empty () const
 
double compare (const AMatrix &mat) const
 
Id getNRows () const
 
Id getNCols () const
 
Id size () const
 
 getValues (bool byCol=true) const
 
const & getDiagonal (Id shift=0) const
 
bool isColumnDefined (Id icol) const
 
bool isRowDefined (Id irow) const
 
Id getNColDefined () const
 
Id getNRowDefined () const
 
 getColumnByRowRange (Id icol, Id rowFrom, Id rowTo) const
 
bool isNonNegative (bool verbose=false) const
 
 prodMatVec (const 1 &x, bool transpose=false) const
 
void prodMatVecInPlace (const 1 &x, 1 &y, bool transpose=false) const
 
void prodMatVecInPlaceC (const constvect x, vect y, bool transpose=false) const
 
void addProdMatVecInPlaceC (const constvect x, vect y, bool transpose=false) const
 
 prodVecMat (const 1 &x, bool transpose=false) const
 
void prodVecMatInPlace (const 1 &x, 1 &y, bool transpose=false) const
 
void prodVecMatInPlaceC (const constvect x, vect y, bool transpose=false) const
 
void addProdVecMatInPlaceC (const constvect x, vect y, bool transpose=false) const
 
double prodVecMatVec (const 1 &x, const 1 &y) const
 
void prodMat (const AMatrix *matY, bool transposeY=false)
 
Id invert ()
 
Id solve (const 1 &b, 1 &x) const
 
void dumpElements (const String &title, Id ifrom, Id ito) const
 
void dumpStatistics (const String &title) const
 
void setIdentity (double value=1.)
 
void fillRandom (Id seed=432432, double zeroPercent=0)
 
void setValues (const 1 &values, bool byCol=true)
 
double getMeanByColumn (Id icol) const
 
double getMinimum () const
 
double getMaximum () const
 
double getNormInf () const
 
void copyReduce (const AMatrix *x, const 1 &validRows, const 1 &validCols)
 
void copyElements (const AMatrix &m, double factor=1.)
 
void makePositiveColumn ()
 
void dumpRange (const char *title)
 
double operator() (Id row, Id col) const
 
double & operator() (Id row, Id col)
 
- Public Member Functions inherited from gstlrn::AStringable
 AStringable ()
 
 AStringable (const AStringable &r)
 
AStringableoperator= (const AStringable &r)
 
virtual ~AStringable ()
 
virtual void display (const AStringFormat *strfmt=nullptr) const final
 
virtual void display (Id level) const final
 
- Public Member Functions inherited from gstlrn::ICloneable
 ICloneable ()
 
virtual ~ICloneable ()
 
virtual ICloneableclone () const =0
 
std::shared_ptr< ICloneablecloneShared () const
 
std::unique_ptr< ICloneablecloneUnique () const
 
- Public Member Functions inherited from gstlrn::ASerializable
 ASerializable ()
 
 ASerializable (const ASerializable &r)
 
ASerializableoperator= (const ASerializable &r)
 
 ASerializable (ASerializable &&r) noexcept
 
ASerializableoperator= (ASerializable &&r) noexcept
 
virtual ~ASerializable ()
 
bool dumpToNF (const String &NFFilename, const EFormatNF &format=EFormatNF::fromKey("DEFAULT"), bool verbose=false) const
 Dump the contents of an object into an Output File using a given Output NF Format.
 
void setDefaultFormatNF (const EFormatNF &format)
 

Static Public Member Functions

static Tablecreate (Id nrow=0, Id ncol=0)
 
static TablecreateFromNames (const VectorString &rownames, const VectorString &colnames)
 
static TablecreateFromNF (const String &NFFilename, bool verbose=true)
 
static TablecreateFromTable (const Table &table)
 
- Static Public Member Functions inherited from gstlrn::MatrixDense
static MatrixDensecreate (const MatrixDense *mat)
 
static MatrixDensecreate (Id nrow, Id ncol)
 
static double traceProd (const MatrixDense &a, MatrixDense &b)
 
static MatrixDensecreateFromVVD (const 1 &X)
 
static MatrixDensecreateFromVD (const 1 &X, Id nrow, Id ncol, bool byCol=false, bool invertColumnOrder=false)
 
static MatrixDenseglue (const AMatrix *A1, const AMatrix *A2, bool flagShiftRow, bool flagShiftCol)
 
static bool sample (MatrixDense &res, const AMatrix &A, const 1 &rowKeep=1(), const 1 &colKeep=1(), bool flagInvertRow=false, bool flagInvertCol=false)
 Create an output Rectangular Matrix by selecting some rows and columns of the Input matrix 'A'.
 
static void sum (const MatrixDense *mat1, const MatrixDense *mat2, MatrixDense *mat3)
 
- Static Public Member Functions inherited from gstlrn::ASerializable
static String buildFileName (Id status, const String &filename, bool ensureDirExist=false)
 
static String getFileIdentity (const String &filename, bool verbose=false)
 
static void setPrefixName (const String &prefixName)
 
static void unsetPrefixName ()
 
static const StringgetPrefixName ()
 

Public Attributes

 DECLARE_TOTL
 Has a specific implementation in the Target language.
 
- Public Attributes inherited from gstlrn::MatrixDense
 DECLARE_TOTL
 Has a specific implementation in the Target language.
 

Constructor & Destructor Documentation

◆ Table() [1/2]

gstlrn::Table::Table ( Id  nrow = 0,
Id  ncol = 0,
bool  skip_title = false,
bool  skip_description = false 
)

◆ Table() [2/2]

gstlrn::Table::Table ( const Table m)

◆ ~Table()

gstlrn::Table::~Table ( )
virtual

Member Function Documentation

◆ create()

Table * gstlrn::Table::create ( Id  nrow = 0,
Id  ncol = 0 
)
static

◆ createFromNames()

Table * gstlrn::Table::createFromNames ( const VectorString rownames,
const VectorString colnames 
)
static

◆ createFromNF()

Table * gstlrn::Table::createFromNF ( const String NFFilename,
bool  verbose = true 
)
static

◆ createFromTable()

Table * gstlrn::Table::createFromTable ( const Table table)
static

◆ getAllRange()

gstlrn::Table::getAllRange ( ) const

◆ getColumnName()

String gstlrn::Table::getColumnName ( Id  icol) const

◆ getColumnNames()

VectorString gstlrn::Table::getColumnNames ( ) const
inline

◆ getRange()

gstlrn::Table::getRange ( Id  icol) const

◆ getRowName()

String gstlrn::Table::getRowName ( Id  irow) const

◆ getRowNames()

VectorString gstlrn::Table::getRowNames ( ) const
inline

◆ getTitle()

const String & gstlrn::Table::getTitle ( ) const
inline

◆ operator=()

Table & gstlrn::Table::operator= ( const Table m)

◆ plot()

void gstlrn::Table::plot ( Id  isimu) const

Plot the contents of the statistics

◆ reset()

void gstlrn::Table::reset ( Id  nrows,
Id  ncols 
)
overridevirtual

Cloneable interface.

Reimplemented from gstlrn::AMatrix.

◆ setColumnName()

void gstlrn::Table::setColumnName ( Id  icol,
const String name 
)

◆ setColumnNames()

void gstlrn::Table::setColumnNames ( const VectorString colNames)

◆ setRowName()

void gstlrn::Table::setRowName ( Id  irow,
const String name 
)

◆ setRowNames()

void gstlrn::Table::setRowNames ( const VectorString rowNames)

◆ setSkipDescription()

void gstlrn::Table::setSkipDescription ( bool  skipDescription)
inline

◆ setSkipTitle()

void gstlrn::Table::setSkipTitle ( bool  skipTitle)
inline

◆ setTitle()

void gstlrn::Table::setTitle ( const String title)
inline

◆ toString()

String gstlrn::Table::toString ( const AStringFormat strfmt = nullptr) const
overridevirtual

Print the contents of the statistics

Reimplemented from gstlrn::AMatrix.

Member Data Documentation

◆ DECLARE_TOTL

gstlrn::Table::DECLARE_TOTL

Has a specific implementation in the Target language.


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