Gephi Toolkit Javadoc

org.gephi.datalab.api
Interface AttributeColumnsMergeStrategiesController

All Known Implementing Classes:
AttributeColumnsMergeStrategiesControllerImpl

public interface AttributeColumnsMergeStrategiesController

This interface defines part of the Data Laboratory API basic actions. It contains methods for applying different basic attribute columns merge strategies.

Author:
Eduardo Ramos

Nested Class Summary
static class AttributeColumnsMergeStrategiesController.BooleanOperations
          Enumeration that defines the supported logic operations for a merge with booleanLogicOperationsMerge strategy.
 
Method Summary
 AttributeColumn averageNumberMerge(AttributeTable table, AttributeColumn[] columnsToMerge, java.lang.String newColumnTitle)
          Merges any combination of number or number list columns, calculating the average of all not null values and puts the result of each row in a new column of BIGDECIMAL AttributeType.
 AttributeColumn booleanLogicOperationsMerge(AttributeTable table, AttributeColumn[] columnsToMerge, AttributeColumnsMergeStrategiesController.BooleanOperations[] booleanOperations, java.lang.String newColumnTitle)
          Strategy to apply only to all boolean columns.
 AttributeColumn firstQuartileNumberMerge(AttributeTable table, AttributeColumn[] columnsToMerge, java.lang.String newColumnTitle)
          Merges any combination of number or number list columns, calculating the first quartile (Q1) of all not null values and puts the result of each row in a new column of BIGDECIMAL AttributeType.
 AttributeColumn interQuartileRangeNumberMerge(AttributeTable table, AttributeColumn[] columnsToMerge, java.lang.String newColumnTitle)
          Merges any combination of number or number list columns, calculating the interquartile range (IQR) of all not null values and puts the result of each row in a new column of BIGDECIMAL AttributeType.
 AttributeColumn joinWithSeparatorMerge(AttributeTable table, AttributeColumn[] columnsToMerge, AttributeType newColumnType, java.lang.String newColumnTitle, java.lang.String separator)
          Joins various columns of any type into a new column using the given separator string (or null).
 AttributeColumn maxValueNumbersMerge(AttributeTable table, AttributeColumn[] columnsToMerge, java.lang.String newColumnTitle)
          Merges any combination of number or number list columns, calculating the maximum value of all not null values and puts the result of each row in a new column of BIGDECIMAL AttributeType.
 AttributeColumn medianNumberMerge(AttributeTable table, AttributeColumn[] columnsToMerge, java.lang.String newColumnTitle)
          Merges any combination of number or number list columns, calculating the median of all not null values and puts the result of each row in a new column of BIGDECIMAL AttributeType.
 AttributeColumn mergeDateColumnsToTimeInterval(AttributeTable table, AttributeColumn startColumn, AttributeColumn endColumn, java.text.SimpleDateFormat dateFormat, java.lang.String defaultStartDate, java.lang.String defaultEndDate)
          Merge 1 or 2 columns creating a time interval for each row.
 AttributeColumn mergeNumericColumnsToTimeInterval(AttributeTable table, AttributeColumn startColumn, AttributeColumn endColumn, double defaultStart, double defaultEnd)
          Merge 1 or 2 columns creating a time interval for each row.
 AttributeColumn minValueNumbersMerge(AttributeTable table, AttributeColumn[] columnsToMerge, java.lang.String newColumnTitle)
          Merges any combination of number or number list columns, calculating the minimum value of all not null values and puts the result of each row in a new column of BIGDECIMAL AttributeType.
 AttributeColumn sumNumbersMerge(AttributeTable table, AttributeColumn[] columnsToMerge, java.lang.String newColumnTitle)
          Merges any combination of number or number list columns, calculating the sum of all not null values and puts the result of each row in a new column of BIGDECIMAL AttributeType.
 AttributeColumn thirdQuartileNumberMerge(AttributeTable table, AttributeColumn[] columnsToMerge, java.lang.String newColumnTitle)
          Merges any combination of number or number list columns, calculating the third quartile (Q3) of all not null values and puts the result of each row in a new column of BIGDECIMAL AttributeType.
 

Method Detail

joinWithSeparatorMerge

AttributeColumn joinWithSeparatorMerge(AttributeTable table,
                                       AttributeColumn[] columnsToMerge,
                                       AttributeType newColumnType,
                                       java.lang.String newColumnTitle,
                                       java.lang.String separator)

Joins various columns of any type into a new column using the given separator string (or null).

If the specified column type is null, the new created column will have STRING AttributeType by default.

Parameters:
table - Table of the columns to merge
columnsToMerge - Columns to merge
newColumnType - Type for the new column. If null, STRING will be used by default
newColumnTitle - Title for the new column
separator - Separator to put between each value
Returns:
The new created column

mergeNumericColumnsToTimeInterval

AttributeColumn mergeNumericColumnsToTimeInterval(AttributeTable table,
                                                  AttributeColumn startColumn,
                                                  AttributeColumn endColumn,
                                                  double defaultStart,
                                                  double defaultEnd)

Merge 1 or 2 columns creating a time interval for each row. Values of the columns will be expected as numbers

Only one of the 2 column could be null, and its corresponding start/end default will be used.

Columns can be of any type. If not numeric, their values will be parsed.

Default start and end values will be used when the columns don't have a value or it can't be parsed to a double.

When start > end for any reason:

Parameters:
table - Table of the columns, can't be null or wrong
startColumn - Column to use as start value
endColumn - Column to use as end value
defaultStart - Default start value
defaultEnd - Default end value
Returns:
Time interval column

mergeDateColumnsToTimeInterval

AttributeColumn mergeDateColumnsToTimeInterval(AttributeTable table,
                                               AttributeColumn startColumn,
                                               AttributeColumn endColumn,
                                               java.text.SimpleDateFormat dateFormat,
                                               java.lang.String defaultStartDate,
                                               java.lang.String defaultEndDate)

Merge 1 or 2 columns creating a time interval for each row. Values of the columns will be expected as dates in the given date format

Only one of the 2 column could be null, and its corresponding start/end default will be used.

Columns can be of any type.

Default start and end values will be used when the columns don't have a value or it can't be parsed to a date. If a default value can't be parsed to a date, infinity will be used as default instead.

When start > end for any reason:

Parameters:
table - Table of the columns, can't be null or wrong
startColumn - Column to use as start value
endColumn - Column to use as end value
dateFormat - Format for the dates, can't be null
defaultStartDate - Default date to use as start if it can be parsed
defaultEndDate - Default date to use as end if it can be parsed
Returns:
Time interval column

booleanLogicOperationsMerge

AttributeColumn booleanLogicOperationsMerge(AttributeTable table,
                                            AttributeColumn[] columnsToMerge,
                                            AttributeColumnsMergeStrategiesController.BooleanOperations[] booleanOperations,
                                            java.lang.String newColumnTitle)

Strategy to apply only to all boolean columns. Merges various columns into a new boolean column allowing to define each operation to apply between each pair of columns to merge.

The length of the operations array must be the length of the columns array-1, or IllegalArgumentException will be thrown.

Parameters:
table - Table of the columns to merge
columnsToMerge - Boolean columns to merge
booleanOperations - Boolean operations to apply
newColumnTitle - Title for the new column
Returns:
The new created column

averageNumberMerge

AttributeColumn averageNumberMerge(AttributeTable table,
                                   AttributeColumn[] columnsToMerge,
                                   java.lang.String newColumnTitle)

Merges any combination of number or number list columns, calculating the average of all not null values and puts the result of each row in a new column of BIGDECIMAL AttributeType.

Parameters:
table - Table of the columns to merge
columnsToMerge - Number or number list columns
newColumnTitle - Title for the new column
Returns:
The new created column

firstQuartileNumberMerge

AttributeColumn firstQuartileNumberMerge(AttributeTable table,
                                         AttributeColumn[] columnsToMerge,
                                         java.lang.String newColumnTitle)

Merges any combination of number or number list columns, calculating the first quartile (Q1) of all not null values and puts the result of each row in a new column of BIGDECIMAL AttributeType.

Parameters:
table - Table of the columns to merge
columnsToMerge - Number or number list columns
newColumnTitle - Title for the new column
Returns:
The new created column

medianNumberMerge

AttributeColumn medianNumberMerge(AttributeTable table,
                                  AttributeColumn[] columnsToMerge,
                                  java.lang.String newColumnTitle)

Merges any combination of number or number list columns, calculating the median of all not null values and puts the result of each row in a new column of BIGDECIMAL AttributeType.

Parameters:
table - Table of the columns to merge
columnsToMerge - Number or number list columns
newColumnTitle - Title for the new column
Returns:
The new created column

thirdQuartileNumberMerge

AttributeColumn thirdQuartileNumberMerge(AttributeTable table,
                                         AttributeColumn[] columnsToMerge,
                                         java.lang.String newColumnTitle)

Merges any combination of number or number list columns, calculating the third quartile (Q3) of all not null values and puts the result of each row in a new column of BIGDECIMAL AttributeType.

Parameters:
table - Table of the columns to merge
columnsToMerge - Number or number list columns
newColumnTitle - Title for the new column
Returns:
The new created column

interQuartileRangeNumberMerge

AttributeColumn interQuartileRangeNumberMerge(AttributeTable table,
                                              AttributeColumn[] columnsToMerge,
                                              java.lang.String newColumnTitle)

Merges any combination of number or number list columns, calculating the interquartile range (IQR) of all not null values and puts the result of each row in a new column of BIGDECIMAL AttributeType.

Parameters:
table - Table of the columns to merge
columnsToMerge - Number or number list columns
newColumnTitle - Title for the new column
Returns:
The new created column

sumNumbersMerge

AttributeColumn sumNumbersMerge(AttributeTable table,
                                AttributeColumn[] columnsToMerge,
                                java.lang.String newColumnTitle)

Merges any combination of number or number list columns, calculating the sum of all not null values and puts the result of each row in a new column of BIGDECIMAL AttributeType.

Parameters:
table - Table of the columns to merge
columnsToMerge - Number or number list columns
newColumnTitle - Title for the new column
Returns:
The new created column

minValueNumbersMerge

AttributeColumn minValueNumbersMerge(AttributeTable table,
                                     AttributeColumn[] columnsToMerge,
                                     java.lang.String newColumnTitle)
Merges any combination of number or number list columns, calculating the minimum value of all not null values and puts the result of each row in a new column of BIGDECIMAL AttributeType.

Parameters:
table - Table of the columns to merge
columnsToMerge - Number or number list columns
newColumnTitle - Title for the new column
Returns:
The new created column

maxValueNumbersMerge

AttributeColumn maxValueNumbersMerge(AttributeTable table,
                                     AttributeColumn[] columnsToMerge,
                                     java.lang.String newColumnTitle)

Merges any combination of number or number list columns, calculating the maximum value of all not null values and puts the result of each row in a new column of BIGDECIMAL AttributeType.

Parameters:
table - Table of the columns to merge
columnsToMerge - Number or number list columns
newColumnTitle - Title for the new column
Returns:
The new created column

Gephi Toolkit Javadoc