計算欄位處理器
根據 Qlik 指令碼運算式新增欄位。
計算欄位處理器可讓您在資料的結構描述中建立新欄位,並使用 Qlik 指令碼運算式填入每個欄位。您的指令碼可以使用輸入結構描述中的所有內容,從而允許您使用現有欄位的組合或轉換版本。
用法
-
計算欄位處理器需要一個輸入流程,且只能產生一個輸出流程。
-
按一下處理器組態面板中的 + 圖示以建立多個計算欄位。
限制
-
計算欄位處理器會在載入指令碼內容中執行運算式。諸如
firstSortedValue、sum、avg和count等彙總函數在此處理器中不起作用,因為它會個別處理每一列,而不是在 GROUP BY 彙總內處理。若要使用彙總函數,請參閱 彙總處理器。 -
圖專用函數在此處理器中不起作用,因為它在資料載入圖層中運作。
-
目前無法在同一個計算欄位處理器中建立新欄位並對其進行參照。建議使用兩個不同的處理器。
屬性
要設定以計算新欄位的屬性。
若要重新命名處理器或編輯其說明,請將滑鼠游標移至 屬性 面板中要變更的名稱或說明上,然後按一下 編輯 圖示。
使用運算式編輯器
按一下組態面板中的 開啟編輯器 按鈕會開啟 運算式編輯器,這是一個功能強大的指令碼編輯器,可協助您建立新欄位。輕鬆插入欄位名稱或函數、開啟說明文件並檢查運算式的有效性。
在左側面板中,您可以檢視目前載入至資料流程中的欄位,並瀏覽各種 Qlik 指令碼函數。此面板分為兩個索引標籤:
-
欄位,其中列出了此流程點可用的欄位。將滑鼠游標移至任何欄位名稱上,然後按一下 + 以直接將其插入運算式中。
-
函數,您可以在其中瀏覽 Qlik 函數。您可以使用搜尋欄位來尋找特定函數,或使用 函數類別 下拉式功能表來篩選它們。
將滑鼠游標移至任何函數上,然後按一下 + 以直接將其插入運算式中。
-
如果您選取 說明指南 切換開關,按一下函數時將會顯示簡短說明和說明文件的連結。
在頂部面板中,您可以啟用或停用三個工具,以在撰寫指令碼時為您提供協助和引導,以及用於修正潛在錯誤的復原和重做按鈕。
-
搜尋和取代,以自動尋找特定值並在需要時進行取代。
-
說明模式,將您在指令碼中撰寫的任何函數轉換為可按一下的連結,這些連結將帶您前往說明文件。
-
自動完成,在您輸入時顯示建議,並附有函數的簡短說明和範例。
底部面板說明了指令碼的任何潛在錯誤,例如不正確的欄位名稱或無效的運算式。
當狀態面板顯示綠色的 確定 時,表示您的運算式有效。按一下 確認 以將此運算式用於您的計算欄位,並返回資料流程編輯器。然後,您可以驗證處理器組態。
範例
-
設定遞增值以用作新欄位列的識別碼:
RecNo()如需詳細資訊,請參閱 計數器函數。
-
使用 if/then/else 條件。在此範例中,您已載入包含溫度的資料,並希望根據這些值包含其他資訊:
If(Temperature <= 0 , 'Freezing', If(Temperature >= 100, 'Boiling', If(Temperature >0 AND Temperature < 100, 'Between')))如需詳細資訊,請參閱 if - 指令碼和圖函數。
-
在單一處理器中執行多個數學運算。在包含已售單位數量、單位價格和單位成本欄位的資料集中,您可以為總收入和總成本建立兩個新欄位。
-
在第一個欄位中,輸入 total_revenue 作為新欄位名稱,以及以下運算式:
[Units Sold] * [Unit Price] -
按一下處理器組態面板中的 + 圖示以建立另一個計算欄位。
-
在第二個欄位中,輸入 total_cost 作為新欄位名稱,以及以下運算式:
[Units Sold] * [Unit Cost]
-