Start » Filter Reference » Data Flow » Conditional Processing » ClassifyByCase

ClassifyByCase


Module: FoundationLite

Separates the elements of the input array into several output arrays, depending on the associated array of case indices.

Name Type Description
Input value
inArray <T>Array Elements to be classified
Input value
inCaseIndices IntegerArray Reference values corresponding to the input array elements
Output value
outCase0 <T>Array Elements corresponding to the case 0
Output value
outCase1 <T>Array Elements corresponding to the case 1
Output value
outCase2 <T>Array Elements corresponding to the case 2
Output value
outCase3 <T>Array Elements corresponding to the case 3
Output value
outCase4 <T>Array Elements corresponding to the case 4
Output value
outCase5 <T>Array Elements corresponding to the case 5
Output value
outCase6 <T>Array Elements corresponding to the case 6
Output value
outCase7 <T>Array Elements corresponding to the case 7

The type of this filter is defined using the type variable T which represents any valid type. Read more.

Hints

  • Also consider using the "select" function in formulas.

Examples

inArray = {"Alice", "Bill", "Frank", "Patricia", "Thomas"}
inCaseIndices = {0, 7, 1, 1, 1}
outCase0 = {"Alice"}
outCase1 = {"Frank", "Patricia", "Thomas"}
outCase2 = {}
outCase3 = {}
outCase4 = {}
outCase5 = {}
outCase6 = {}
outCase7 = {"Bill"}

Errors

This filter can throw an exception to report error. Read how to deal with errors in Error Handling.

List of possible exceptions:

Error type Description
DomainError Inconsistent array lengths on input in ClassifyByCase.
DomainError Incorrect case index in ClassifyByCase.

Complexity Level

This filter is available on Advanced Complexity Level.

Filter Group

This filter is member of Classify filter group.

See Also

  • ClassifyByPredicate – Separates the elements of the input array into two output arrays. The first output array contains all the elements for which the associated predicate is True.
  • ClassifyByRange – Separates the elements of the input array into three output arrays, depending on whether the related values fall below, into or above the specified range.