Home
Manual
Packages
Global Index
Keywords
Quick Reference
|
2.3.4 Selecting an arbitrary list of indices
An index list is an array of index values. Use an index list to specify
an arbitrary subset of an array: x([5,1,2,1]) means the four
element array [x(5), x(1), x(2), x(1)]. The where function
returns an index list:
| list= where(x > 3.5)
y= x(list)
|
These lines define the array y to be the subset of the x
array, consisting of the elements greater than 3.5.
Like the result of an index range, the result of an index list is itself
an array. However, the index list follows a more general rule: The
dimensionality of the result is the same as the dimensionality of the
index list. Hence, x([[5, 1], [2, 1]]) refers to the two
dimensional array [[x(5), x(1)], [x(2), x(1)]]. The general rule
for index lists is:
| Dimensions from the dimensions of the index list; values from the array
being indexed.
|
Note that the scalar index value is a special case of an index list
according to this rule.
The rule applies to multi-dimensional arrays as well: If x is a
five-by-nine array, then x(, [[5, 1], [2, 1]]) is a
five-by-two-by-two array. And x([[5, 1], [2, 1]], 3:6) is a
two-by-two-by-four array.
|