Window 轉換

注意:轉換屬於基礎程式語言的一部分,使用者無法直接存取。本篇文章的內容僅供參考。

window 轉換可讓您依據現有資料列相關資料的累計範圍,執行加總與計算作業。

例如,您可以計算指定資料欄的現行資料列值和前三列的累計平均。此轉換步驟特別適合用於處理時間或序列資料。

您可以對 window 轉換步驟套用一或多個函式。

  • 如要進一步瞭解窗型函式,請參閱窗型函式
  • 您也可以使用匯總函式搭配這個轉換步驟。請參閱匯總函式

注意事項:對大量的資料列套用此轉換時,請小心謹慎。在某些情況下,應用程式可能會在產生結果時耗盡記憶體,導致轉換失敗。

基本用法

window value: ROLLINGAVERAGE(myValues,3) order: MyDate group: customerId

輸出:產生名為 window 的新資料欄,其中包含對 myValues 資料欄的現行資料列到前 3 列套用 ROLLINGAVERAGE 函式的結果,按 MyDate 排序且依 customerId 分組。

參數

window value: WINDOW_FUNCTION(arg1,arg2) order: order_col [group: group_col]

符記是否必要?資料類型說明
window轉換轉換指令的名稱
value字串運算式,得出的結果為窗型函式呼叫及其參數
order字串在套用 value 運算式前,用來排序資料集的資料欄或資料欄名稱
group字串資料欄名稱,包含分組計算所依據的值

如要進一步瞭解語法標準,請參閱語言文件語法附註一文。

value

window 轉換中,value 參數含有一或多個函式呼叫,這些呼叫定義要套用函式的資料列集。

您可以針對該值指定數個窗型函式。每個函式參照必須以逗號分隔。系統會在轉換中為每個窗型函式產生新的資料欄。

這個轉換使用特殊的函式集。如要進一步瞭解可用的函式,請參閱窗型函式

使用須知:

是否必要?資料類型
字串 (運算式)

order

window 轉換中,此參數用於在套用指定函式前指定要排序資料集的資料欄。在排序鍵組合中,您可以加入多個以逗號分隔的資料欄。

注意事項:order 參數必須明確指定資料順序,否則產生的結果可能會隨著工作執行而改變。

注意事項:如果您要套用窗型函式,則需要主鍵才能識別輸出中的資料列。否則會得到不清楚的結果。如要進一步瞭解如何定義主鍵,請參閱窗型函式一文。

注意:如果有主鍵,則資料集會先按 group 值分組,然後依照 order 資料欄的值排序。

注意:order 資料欄執行 window 轉換前不需要排序。

提示:如要反向排序,請在資料欄名稱前加上連字號 (-MyDate)。

使用須知:

是否必要?資料類型
字串 (資料欄名稱)

group

window 轉換中,此參數會在套用指定函式前指定資料欄,且該資料欄的值用於將資料集進行分組。在分組組合中,您可以指定多個以逗號分隔的資料欄名稱。

附註:如使用 group 參數執行轉換,則會在資料網格中產生非確定性的重新排序。

使用須知:

是否必要?資料類型
字串 (資料欄名稱)

範例

如要查看個別函式的範例,請參閱窗型函式

本頁內容對您是否有任何幫助?請提供意見:

傳送您對下列選項的寶貴意見...

這個網頁
Google Cloud Dataprep 說明文件
需要協助嗎?請前往我們的支援網頁