|  | Inviwo 0.9.12-pre
    Inviwo documentation | 
| Functions | |
| IVW_MODULE_DATAFRAME_API std::shared_ptr< BufferBase > | cloneBufferRange (std::shared_ptr< const BufferBase > buffer, ivec2 range) | 
| IVW_MODULE_DATAFRAME_API void | copyBufferRange (std::shared_ptr< const BufferBase > src, std::shared_ptr< BufferBase > dst, ivec2 range, size_t dstStart=0) | 
| IVW_MODULE_DATAFRAME_API std::shared_ptr< DataFrame > | appendColumns (const DataFrame &left, const DataFrame &right, bool ignoreDuplicates=false, bool fillMissingRows=false) | 
| create a new DataFrame by appending the columns of DataFrame rightto DataFrameleft | |
| IVW_MODULE_DATAFRAME_API std::shared_ptr< DataFrame > | appendRows (const DataFrame &top, const DataFrame &bottom, bool matchByName=false) | 
| create a new DataFrame by appending the rows of DataFrame bottomto DataFrametop | |
| IVW_MODULE_DATAFRAME_API std::shared_ptr< DataFrame > | innerJoin (const DataFrame &left, const DataFrame &right, const std::pair< std::string, std::string > &keyColumns={"index", "index"}) | 
| create a new DataFrame by using an inner join of DataFrame leftand DataFrameright. That is only rows with matching keys are kept. The row indices ofleftwill be reused. | |
| IVW_MODULE_DATAFRAME_API std::shared_ptr< DataFrame > | innerJoin (const DataFrame &left, const DataFrame &right, const std::vector< std::pair< std::string, std::string > > &keyColumns) | 
| create a new DataFrame by using an inner join of DataFrame leftand DataFrameright. That is only rows with matching keys are kept. The row indices ofleftwill be reused. | |
| IVW_MODULE_DATAFRAME_API std::shared_ptr< DataFrame > | leftJoin (const DataFrame &left, const DataFrame &right, const std::pair< std::string, std::string > &keyColumns={"index", "index"}) | 
| create a new DataFrame by using an outer left join of DataFrame leftand DataFrameright. That is all rows ofleftare augmented with matching rows fromright. The row indices ofleftwill be reused. | |
| IVW_MODULE_DATAFRAME_API std::shared_ptr< DataFrame > | leftJoin (const DataFrame &left, const DataFrame &right, const std::vector< std::pair< std::string, std::string > > &keyColumns) | 
| create a new DataFrame by using an outer left join of DataFrame leftand DataFrameright. That is all rows ofleftare augmented with matching rows fromright. The row indices ofleftwill be reused. | |
| IVW_MODULE_DATAFRAME_API std::shared_ptr< DataFrame > | combineDataFrames (std::vector< std::shared_ptr< DataFrame > > dataframes, bool skipIndexColumn=false, std::string skipcol="index") | 
| template<typename Pred> | |
| std::vector< std::uint32_t > | selectRows (std::shared_ptr< const Column > col, Pred pred) | 
| apply predicate predto each value of columncoland return the row indices where the predicate evaluates to true. | |
| IVW_MODULE_DATAFRAME_API std::vector< std::uint32_t > | selectRows (const Column &col, const std::vector< dataframefilters::ItemFilter > &filters) | 
| apply the filtersto each row of columncoland return the row indices where any of the filters evaluates to true. | |
| IVW_MODULE_DATAFRAME_API std::vector< std::uint32_t > | selectRows (const DataFrame &dataframe, dataframefilters::Filters filters) | 
| apply the filtersto each row ofdataframeand return the row indices where any of the include filters and no exclude filter evaluates to true. | |
| IVW_MODULE_DATAFRAME_API std::string | createToolTipForRow (const DataFrame &dataframe, size_t rowId) | 
Utility functions for DataFrame operations
| IVW_MODULE_DATAFRAME_API std::shared_ptr< DataFrame > inviwo::dataframe::appendColumns | ( | const DataFrame & | left, | 
| const DataFrame & | right, | ||
| bool | ignoreDuplicates = false, | ||
| bool | fillMissingRows = false ) | 
create a new DataFrame by appending the columns of DataFrame right to DataFrame left 
| left | |
| right | |
| ignoreDuplicates | duplicate columns, i.e. same column header, are ignored if true | 
| fillMissingRows | if true, missing rows in either DataFrame are filled with 0 or "undefined" (for categorical columns) | 
| Exception | if number of rows is different and fillMissingRowsis false | 
| IVW_MODULE_DATAFRAME_API std::shared_ptr< DataFrame > inviwo::dataframe::appendRows | ( | const DataFrame & | top, | 
| const DataFrame & | bottom, | ||
| bool | matchByName = false ) | 
create a new DataFrame by appending the rows of DataFrame bottom to DataFrame top 
| top | |
| bottom | |
| matchByName | if true, column headers are used for matching columns. Otherwise columns are matched by order (default) | 
| Exception | if number of columns is different or a column cannot be found (matchByName) | 
| IVW_MODULE_DATAFRAME_API std::shared_ptr< DataFrame > inviwo::dataframe::innerJoin | ( | const DataFrame & | left, | 
| const DataFrame & | right, | ||
| const std::pair< std::string, std::string > & | keyColumns = {"index", "index"} ) | 
create a new DataFrame by using an inner join of DataFrame left and DataFrame right. That is only rows with matching keys are kept. The row indices of left will be reused. 
It is assumed that the entries in the key columns are unique. Otherwise results are undefined.
| left | |
| right | |
| keyColumns | headers of the columns used as keys for the join operation (default: index and index column) | 
left and right DataFrame | Exception | if keyColumn does not exist in either leftorright | 
| IVW_MODULE_DATAFRAME_API std::shared_ptr< DataFrame > inviwo::dataframe::innerJoin | ( | const DataFrame & | left, | 
| const DataFrame & | right, | ||
| const std::vector< std::pair< std::string, std::string > > & | keyColumns ) | 
create a new DataFrame by using an inner join of DataFrame left and DataFrame right. That is only rows with matching keys are kept. The row indices of left will be reused. 
It is assumed that the entries in the key columns are unique. Otherwise results are undefined.
| left | |
| right | |
| keyColumns | headers of the columns used as keys for the join operation | 
left and right DataFrame | Exception | if keyColumn does not exist in either leftorright | 
| IVW_MODULE_DATAFRAME_API std::shared_ptr< DataFrame > inviwo::dataframe::leftJoin | ( | const DataFrame & | left, | 
| const DataFrame & | right, | ||
| const std::pair< std::string, std::string > & | keyColumns = {"index", "index"} ) | 
create a new DataFrame by using an outer left join of DataFrame left and DataFrame right. That is all rows of left are augmented with matching rows from right. The row indices of left will be reused. 
It is assumed that the entries in the key columns of right are unique. Otherwise results are undefined.
| left | |
| right | |
| keyColumns | headers of the columns used as keys for the join operation (default: index and index column) | 
left and right DataFrame | Exception | if keyColumn does not exist in either leftorright | 
| IVW_MODULE_DATAFRAME_API std::shared_ptr< DataFrame > inviwo::dataframe::leftJoin | ( | const DataFrame & | left, | 
| const DataFrame & | right, | ||
| const std::vector< std::pair< std::string, std::string > > & | keyColumns ) | 
create a new DataFrame by using an outer left join of DataFrame left and DataFrame right. That is all rows of left are augmented with matching rows from right. The row indices of left will be reused. 
It is assumed that the entries in the key columns of right are unique. Otherwise results are undefined.
| left | |
| right | |
| keyColumns | headers of the columns used as keys for the join operation | 
left and right DataFrame | Exception | if keyColumn does not exist in either leftorright | 
| IVW_MODULE_DATAFRAME_API std::vector< std::uint32_t > inviwo::dataframe::selectRows | ( | const Column & | col, | 
| const std::vector< dataframefilters::ItemFilter > & | filters ) | 
apply the filters to each row of column col and return the row indices where any of the filters evaluates to true. 
| col | column containing data for filtering | 
| filters | predicate to check values from col | 
filters | IVW_MODULE_DATAFRAME_API std::vector< std::uint32_t > inviwo::dataframe::selectRows | ( | const DataFrame & | dataframe, | 
| dataframefilters::Filters | filters ) | 
apply the filters to each row of dataframe and return the row indices where any of the include filters and no exclude filter evaluates to true. 
| dataframe | column containing data for filtering | 
| filters | predicate to check values from col | 
filters | std::vector< std::uint32_t > inviwo::dataframe::selectRows | ( | std::shared_ptr< const Column > | col, | 
| Pred | pred ) | 
apply predicate pred to each value of column col and return the row indices where the predicate evaluates to true. 
Note: the predicate function needs to take care of the different column datatypes
Alternatively, predicate overloads can be used.
| col | column containing data for filtering | 
| pred | predicate to check values from col |