FieldIndex — скрипт и функция диаграммы
Функция FieldIndex()возвращает позицию значения поля value в поле field_name (в порядке загрузки).
Синтаксис:
FieldIndex(field_name , value)
Возвращаемые типы данных: целое
Аргументы:
- field_name: имя поля, для которого требуется индекс. Например, столбец в таблице. Это значение должно быть дано строковым. Это означает, что имя поля должно быть заключено в одинарные кавычки.
- value: значение поля field_name.
Ограничения:
-
Сортировка по значениям y на диаграммах или сортировка по столбцам выражений в таблицах не допускается, если в любом из выражений диаграммы используется эта функция диаграмм. Данные возможности сортировки автоматически отключаются. Когда используется эта функция диаграмм в визуализации или таблице, сортировка визуализации будет возвращена к сортировке на входе этой функции. Это ограничение не распространяется на эквивалентную функцию скрипта.
-
Если элемент value не может быть найден среди значений поля field_name, 0 возвращается.
Примеры:
Добавьте показанный ниже образец данных в свой документ и запустите. В следующих примерах используется поле First name из таблицы Names.
| Пример | Результат |
|---|---|
|
Функция диаграммы. В таблицу, содержащую измерение First name, добавьте следующую меру: FieldIndex ('First name','John') |
1, поскольку элемент «John» появляется первым, если поле First name упорядочено в порядке загрузки. Обратите внимание, что в списке элемент John появится как число 2 сверху, поскольку он отсортирован в алфавитном порядке, а не в порядке загрузки. |
|
Функция диаграммы с First name: FieldIndex ('First name','Peter') |
4, поскольку элемент FieldIndex() возвращает только одно значение, которое встречается сначала в порядке загрузки. |
|
Функция скрипта. При условии, что таблица Names загружена так же, как данные в примере: John1: Load FieldIndex('First name','John') as MyJohnPos Resident Names; |
MyJohnPos=1, поскольку элемент «John» появляется первым, если поле First name упорядочено в порядке загрузки. Обратите внимание, что в списке элемент John появится как число 2 сверху, поскольку он отсортирован в алфавитном порядке, а не в порядке загрузки. |
|
Функция скрипта с Names: Peter1: Load FieldIndex('First name','Peter') as MyPeterPos Resident Names; |
MyPeterPos=4, поскольку элемент FieldIndex() возвращает только одно значение, которое встречается сначала в порядке загрузки. |
Данные, используемые в примере:
Names:
LOAD * inline [
"First name"|"Last name"|Initials|"Has cellphone"
John|Anderson|JA|Yes
Sue|Brown|SB|Yes
Mark|Carr|MC |No
Peter|Devonshire|PD|No
Jane|Elliot|JE|Yes
Peter|Franc|PF|Yes ] (delimiter is '|');
John1:
Load FieldIndex('First name','John') as MyJohnPos
Resident Names;
Peter1:
Load FieldIndex('First name','Peter') as MyPeterPos
Resident Names;