- Available conditions
- SequenceConditionMode
- BooleanColumnCondition
- CategoricalColumnCondition
- DoubleColumnCondition
- InfiniteColumnCondition
- IntegerColumnCondition
- InvalidValueColumnCondition
- LongColumnCondition
- NaNColumnCondition
- NullWritableColumnCondition
- StringColumnCondition
- TimeColumnCondition
- TrivialColumnCondition
- SequenceLengthCondition
- StringRegexColumnCondition
Available conditions
BooleanCondition
BooleanCondition: used for creating compound conditions,such as AND(ConditionA, ConditionB, …)As a BooleanCondition is a condition,these can be chained together,like NOT(OR(AND(…),AND(…)))
outputColumnName
public String outputColumnName()
The output column nameafter the operation has been applied
- return the output column name
columnName
public String columnName()
The output column namesThis will often be the same as the input
- return the output column names
condition
public boolean condition(Object input)
Condition on arbitrary input
- param input the input to returnthe condition for
- return true if the condition is metfalse otherwise
conditionSequence
public boolean conditionSequence(Object sequence)
Condition on arbitrary input
- param sequence the sequence todo a condition on
- return true if the condition for the sequence is met false otherwise
transform
public Schema transform(Schema inputSchema)
Get the output schema for this transformation, given an input schema
- param inputSchema
AND
public static Condition AND(Condition... conditions)
And of all the given conditions
- param conditions the conditions to and
- return a joint and of all these conditions
OR
public static Condition OR(Condition... conditions)
Or of all the given conditions
- param conditions the conditions to or
- return a joint and of all these conditions
NOT
public static Condition NOT(Condition condition)
Not of the given condition
- param condition the conditions to and
- return a joint and of all these condition
XOR
public static Condition XOR(Condition first, Condition second)
And of all the given conditions
- param first the first condition
- param second the second condition for xor
- return the xor of these 2 conditions
SequenceConditionMode
For certain single-column conditions: how should we apply these to sequences?And: Condition applies to sequence only if it applies to ALL time stepsOr: Condition applies to sequence if it applies to ANY time stepsNoSequencMode: Condition cannot be applied to sequences at all (error condition)
BooleanColumnCondition
Created by agibsonccc on 11/26/16.
columnCondition
public boolean columnCondition(Writable writable)
Returns whether the given elementmeets the condition set by this operation
- param writable the element to test
- return true if the condition is metfalse otherwise
condition
public boolean condition(Object input)
Condition on arbitrary input
- param input the input to returnthe condition for
- return true if the condition is metfalse otherwise
CategoricalColumnCondition
columnCondition
public boolean columnCondition(Writable writable)
Constructor for conditions equal or not equal.Uses default sequence condition mode, {- link BaseColumnCondition#DEFAULT_SEQUENCE_CONDITION_MODE}
- param columnName Column to check for the condition
- param op Operation (== or != only)
- param value Value to use in the condition
condition
public boolean condition(Object input)
Condition on arbitrary input
- param input the input to returnthe condition for
- return true if the condition is metfalse otherwise
DoubleColumnCondition
columnCondition
public boolean columnCondition(Writable writable)
Constructor for operations such as less than, equal to, greater than, etc.Uses default sequence condition mode, {- link BaseColumnCondition#DEFAULT_SEQUENCE_CONDITION_MODE}
- param columnName Column to check for the condition
- param op Operation (<, >=, !=, etc)
- param value Value to use in the condition
condition
public boolean condition(Object input)
Condition on arbitrary input
- param input the input to returnthe condition for
- return true if the condition is metfalse otherwise
InfiniteColumnCondition
A column condition that simply checks whether a floating point value is infinite
columnCondition
public boolean columnCondition(Writable writable)
- param columnName Column check for the condition
IntegerColumnCondition
columnCondition
public boolean columnCondition(Writable writable)
Constructor for operations such as less than, equal to, greater than, etc.Uses default sequence condition mode, {- link BaseColumnCondition#DEFAULT_SEQUENCE_CONDITION_MODE}
- param columnName Column to check for the condition
- param op Operation (<, >=, !=, etc)
- param value Value to use in the condition
condition
public boolean condition(Object input)
Condition on arbitrary input
- param input the input to returnthe condition for
- return true if the condition is metfalse otherwise
InvalidValueColumnCondition
A Condition that applies to a single column.Whenever the specified value is invalid according to the schema, the condition applies.
For example, if a Writable contains String values in an Integer column (and these cannot be parsed to an integer), thenthe condition would return true, as these values are invalid according to the schema.
condition
public boolean condition(Object input)
Condition on arbitrary input
- param input the input to returnthe condition for
- return true if the condition is metfalse otherwise
LongColumnCondition
columnCondition
public boolean columnCondition(Writable writable)
Constructor for operations such as less than, equal to, greater than, etc.Uses default sequence condition mode, {- link BaseColumnCondition#DEFAULT_SEQUENCE_CONDITION_MODE}
- param columnName Column to check for the condition
- param op Operation (<, >=, !=, etc)
- param value Value to use in the condition
condition
public boolean condition(Object input)
Condition on arbitrary input
- param input the input to returnthe condition for
- return true if the condition is metfalse otherwise
NaNColumnCondition
A column condition that simply checks whether a floating point value is NaN
columnCondition
public boolean columnCondition(Writable writable)
- param columnName Name of the column to check the condition for
NullWritableColumnCondition
Condition that applies to the values in any column. Specifically, condition is trueif the Writable value is a NullWritable, and false for any other value
condition
public boolean condition(Object input)
Condition on arbitrary input
- param input the input to returnthe condition for
- return true if the condition is metfalse otherwise
StringColumnCondition
columnCondition
public boolean columnCondition(Writable writable)
Constructor for conditions equal or not equalUses default sequence condition mode, {- link BaseColumnCondition#DEFAULT_SEQUENCE_CONDITION_MODE}
- param columnName Column to check for the condition
- param op Operation (== or != only)
- param value Value to use in the condition
condition
public boolean condition(Object input)
Condition on arbitrary input
- param input the input to returnthe condition for
- return true if the condition is metfalse otherwise
TimeColumnCondition
Condition that applies to the values
columnCondition
public boolean columnCondition(Writable writable)
Constructor for operations such as less than, equal to, greater than, etc.Uses default sequence condition mode, {- link BaseColumnCondition#DEFAULT_SEQUENCE_CONDITION_MODE}
- param columnName Column to check for the condition
- param op Operation (<, >=, !=, etc)
- param value Time value (in epoch millisecond format) to use in the condition
condition
public boolean condition(Object input)
Condition on arbitrary input
- param input the input to returnthe condition for
- return true if the condition is metfalse otherwise
TrivialColumnCondition
Created by huitseeker on 5/17/17.
SequenceLengthCondition
A condition on sequence lengths
StringRegexColumnCondition
Condition that applies to the values in a String column, using a provided regex.Condition return true if the String matches the regex, or false otherwise
Note: Uses Writable.toString(), hence can potentially be applied to non-String columns
condition
public boolean condition(Object input)
Condition on arbitrary input
- param input the input to returnthe condition for
- return true if the condition is metfalse otherwise