Expressions to select rows are a variant of code pieces containing expressions, but provide additional flexibility. These expressions
are typically used in functions with names containing ... selected rows ... where expressions are applied to chosses specifc rows to
include in the data processing.
Like expressions specified as code pieces, these expressions can be coded directly or provided as strings with preceding colon (:) symbols.
The expressions may return values of following types:
boolean | If it is an expression returning boolean values, then this expression will be calculated for every row, starting with row 1 (excluding the header row). Typically, processing will be done on the corresponding rows if the outcome is true. |
numeral | If the expression returns a numeral, then one single row number is meant. Negative indexing is allowed, e.g. -1 refers to the last row. |
Set | If the expression returns a set, the the row numbers inside the sets will be used. Negative indexing is allowed. The set must contain numerals (row numbers) or may be an empty set if no rows shall be selected. Negative indexing is allowed, i.e. -1 refers to the last row. Note: Even if row numbers are specified in different orders or multiple times, the table will be processed from top to bottom, and every matching row will processed only once. |
table initialize ( table,
{ { Animal, leg count }, { Worm, 0}, { Bird, 2 }, { Dog, 4 }, { Fly, 6 }, { Tick, 8 } } );
table process selected rows(
table, ([Animal]=Tick,Bird),
echo( "row nr.: ", row()," Animal: ", [Animal], " has ", [leg count], " legs" ) );
echo;
table process selected rows(
table, -1, // -1 -> Row 5 (Negative indexing)
echo( "row nr.: ", row()," Animal: ", [Animal], " has ", [leg count], " legs" ) );
echo;
table process selected rows(
table, {1,3,-2}, // -2 -> Row 4 (Negative indexing)
echo( "row nr.: ", row()," Animal: ", [Animal], " has ", [leg count], " legs" ) );
row nr.: 2 Animal: Bird has 2 legs
row nr.: 5 Animal: Tick has 8 legs
row nr.: 5 Animal: Tick has 8 legs
row nr.: 1 Animal: Worm has 0 legs
row nr.: 3 Animal: Dog has 4 legs
row nr.: 4 Animal: Fly has 6 legs