FieldIndex - 指令碼與圖表函數
FieldIndex() 會傳回在欄位 field_name 中欄位值 value 的位置 (依據載入順序)。
語法:
FieldIndex(field_name , value)
傳回的資料類型: 整數
引數:
- field_name:索引需要的欄位名稱。例如表格中的資料行。 必須指定為字串值。這表示欄位名稱必須以單引號括住。
- value:欄位 field_name 的值。
限制:
-
當任何圖表運算式使用了此圖表函數時,就不允許在圖表中依據 Y 值排序,或在表格中依據運算式資料行排序。因此,這些排序替代選項會自動停用。若您在視覺化或表格中使用此圖表函數,視覺化的排序將還原為對此函數的排序輸入。此限制不適用於對等指令碼函數。
-
若無法在欄位 field_name 的欄位值內找到 value,則會傳回 0。
範例:
新增以下範例資料到您的文件中並加以執行。以下範例使用來自表格 Names 的欄位:First name。
範例 | 結果 |
---|---|
圖表函數 - 在包含維度 First name 的表格中,新增為量值: FieldIndex ('First name','John') |
1,因為「John」是 First name 欄位載入順序中第一個出現者。請注意,列表框 John 會出現在頂端第二項,因為是以字母排序而非載入順序。 |
具有 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 會出現在頂端第二項,因為是以字母排序而非載入順序。 |
具有 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;