aGrUM 2.3.2
a C++ library for (probabilistic) graphical models
Database Manipulations
Collaboration diagram for Database Manipulations:

Classes

class  gum::learning::CSVParser
 Class for fast parsing of CSV file (never more than one line in application memory). More...
class  gum::learning::DatabaseTable
 The class representing a tabular database as used by learning tasks. More...
class  gum::learning::DBCell
 The class representing the original values of the cells of databases. More...
class  gum::learning::DBHandler< T_DATA >
 The base class for all database handlers. More...
class  gum::learning::DBInitializerFromCSV
 The class for initializing DatabaseTable and RawDatabaseTable instances from CSV files. More...
class  gum::learning::DBInitializerFromSQL
 The class for initializing DatabaseTable and RawDatabaseTable instances from SQL databases. More...
class  gum::learning::DBRow< T_DATA >
 The class for storing a record in a database. More...
class  gum::learning::DBRowGenerator
 The base class for all DBRow generators. More...
class  gum::learning::DBRowGenerator4CompleteRows
 A DBRowGenerator class that returns the rows that are complete (fully observed) w.r.t. More...
class  gum::learning::DBRowGeneratorEM< GUM_SCALAR >
 A DBRowGenerator class that returns incomplete rows as EM would do. More...
class  gum::learning::DBRowGeneratorIdentity
 A DBRowGenerator class that returns exactly the rows it gets in input. More...
class  gum::learning::DBRowGeneratorParser
 the class used to read a row in the database and to transform it into a set of DBRow instances that can be used for learning. More...
class  gum::learning::DBRowGeneratorSet
 The class used to pack sets of generators. More...
class  gum::learning::DBRowGeneratorWithBN< GUM_SCALAR >
 Base class for DBRowGenerator classes that use a BN for computing their outputs. More...
union  gum::learning::DBTranslatedValue
 The union class for storing the translated values in learning databases. More...
class  gum::learning::DBTranslator
 The base class for all the tabular database cell translators. More...
class  gum::learning::DBTranslator4ContinuousVariable
 The databases' cell translators for continuous variables. More...
class  gum::learning::DBTranslator4DiscretizedVariable
 The databases' cell translators for discretized variables. More...
class  gum::learning::DBTranslator4IntegerVariable
 The databases' cell translators for integer variables. More...
class  gum::learning::DBTranslator4LabelizedVariable
 The databases' cell translators for labelized variables. More...
class  gum::learning::DBTranslator4NumericalDiscreteVariable
 The databases' cell translators for numerical Discrete variables. More...
class  gum::learning::DBTranslator4RangeVariable
 The databases' cell translators for range variables. More...
class  gum::learning::DBTranslatorSet
 the class for packing together the translators used to preprocess the datasets More...
class  gum::learning::IDatabaseTable< T_DATA >
 The common class for the tabular database tables. More...
class  gum::learning::IDatabaseTable< T_DATA >::Handler
 the (unsafe) handler for the tabular databases More...
class  gum::learning::IDatabaseTable< T_DATA >::HandlerSafe
 the safe handler of the tabular databases More...
class  gum::learning::IDBInitializer
 The base class for initializing DatabaseTable and RawDatabaseTable instances from CSV files or SQL databases. More...
class  gum::learning::NanodbcParser
 Class for parsing SQL results using Nanodbc. More...
class  gum::learning::RawDatabaseTable
 The table containing the raw/original data of a database. More...

Enumerations

enum class  gum::learning::DBRowGeneratorGoal : char { gum::learning::DBRowGeneratorGoal::ONLY_REMOVE_MISSING_VALUES , gum::learning::DBRowGeneratorGoal::OTHER_THINGS_THAN_REMOVE_MISSING_VALUES }
 the type of things that a DBRowGenerator is designed for More...
enum class  gum::learning::DBTranslatedValueType : char { gum::learning::DBTranslatedValueType::DISCRETE , gum::learning::DBTranslatedValueType::CONTINUOUS }
 The nature of the elements handled by translators (discrete, continuous). More...

Functions

DBTranslatorgum::learning::DBTranslators::create (const Variable &var, const bool editable_dictionary=false, std::size_t max_dico_entries=std::numeric_limits< std::size_t >::max())
 named constructor
DBTranslatorgum::learning::DBTranslators::create (const Variable &var, const std::vector< std::string > &missing_symbols, const bool editable_dictionary=false, std::size_t max_dico_entries=std::numeric_limits< std::size_t >::max())
 named constructor

Detailed Description

Enumeration Type Documentation

◆ DBRowGeneratorGoal

enum class gum::learning::DBRowGeneratorGoal : char
strong

the type of things that a DBRowGenerator is designed for

Enumerator
ONLY_REMOVE_MISSING_VALUES 
OTHER_THINGS_THAN_REMOVE_MISSING_VALUES 

Definition at line 67 of file DBRowGenerator.h.

67 : char {
68 // the generator's goal is only to remove all missing values
70
71 // the generator does something else than just missing values
73 };

◆ DBTranslatedValueType

enum class gum::learning::DBTranslatedValueType : char
strong

The nature of the elements handled by translators (discrete, continuous).

The union class for storing the translated values in learning databases.

Currently, a DBTranslatorType is one of:

Each DBTranslator has a DBTranslatedValueType that indicates whether it handles a discrete or a continuous variable. As a result, when the DBTranslator translates a string into a DBTranslatedValue, to access the content of the latter, you should use either the discr_val field of the DBTranslatedValue if the DBTranslatedValueType of the translator is DISCRETE or the cont_val field if the translator is CONTINUOUS.

Enumerator
DISCRETE 
CONTINUOUS 

Definition at line 139 of file DBTranslatedValue.h.

Function Documentation

◆ create() [1/2]

DBTranslator * gum::learning::DBTranslators::create ( const Variable & var,
const bool editable_dictionary = false,
std::size_t max_dico_entries = std::numeric_limits< std::size_t >::max() )

named constructor

Parameters
varthe variable that the translator represents. This will implicitly select the appropriate translator to be created (e.g., DBTranslator4RangeVariable).
editable_dictionaryFor those translators that can enable/disable the update of their dictionary during the reading of databases (e.g., DBTranslator4LabelizedVariable), this indicates whether we allow or not such updates. For DBTranslator4ContinuousVariable, this corresponds to the fit_range constructor's parameter.
max_dico_entriesFor translators that store explicitly their dictionary in memory, this parameter specifies the max number of entries in this dictionary
Returns
a DBTranslator specifically designed for the variable in argument.
Warning
DBTranslator is an abstract class. To construct one, you should usually construct one of its inherited classes (e.g., DBTranslator4LabelizedVariable, DBTranslator4RangeVariable, etc.). The named constructor create will construct the inherited class that suits the variable passed in argument.

◆ create() [2/2]

DBTranslator * gum::learning::DBTranslators::create ( const Variable & var,
const std::vector< std::string > & missing_symbols,
const bool editable_dictionary = false,
std::size_t max_dico_entries = std::numeric_limits< std::size_t >::max() )

named constructor

Parameters
varthe variable that the translator represents. This will implicitly select the appropriate translator to be created (e.g., DBTranslator4RangeVariable).
missing_symbolsthe set of symbols that the translator should consider as corresponding to missing values in the database
editable_dictionaryFor those translators that can enable/disable the update of their dictionary during the reading of databases (e.g., DBTranslator4LabelizedVariable), this indicates whether we allow or not such updates. For DBTranslator4ContinuousVariable, this corresponds to the fit_range constructor's parameter.
max_dico_entriesFor translators that store explicitly their dictionary in memory, this parameter specifies the max number of entries in this dictionary
Returns
a DBTranslator specifically designed for the variable in argument.
Warning
DBTranslator is an abstract class. To construct one, you should usually construct one of its inherited classes (e.g., DBTranslator4LabelizedVariable, DBTranslator4RangeVariable, etc.). The named constructor create will construct the inherited class that suits the variable passed in argument.