範例 - NEXT 函式

下列資料集含有前 12 個月的訂單資訊。您想要比較當前月份與前一季的平均值。

來源:

DateAmount
12/31/15118
11/30/156
10/31/15443
9/30/15785
8/31/1577
7/31/15606
6/30/15421
5/31/15763
4/30/15305
3/31/15824
2/28/15135
1/31/15523

轉換:

使用 ROLLINGAVERAGE 函式產生的資料欄會包含當前月份和前兩個月的累計平均值:

window value: ROLLINGAVERAGE(Amount, 3, 0) order: -Date

請注意第二個參數和 order 參數的符號。排序與 Date 參數的順序相反,此參數維持目前的排序順序。因此,第二個參數 (識別計算所使用的列數) 必須是正數,才能擷取前幾個月的記錄。

就技術層面而言,這樣的計算並不會擷取前一季的記錄,因為計算中還包含了目前這一季。您可以使用下列資料欄來擷取前一個月的累計平均值,然後變成前一季真正的累計平均值。window 資料欄會參照前一步驟產生的資料欄名稱:

window value: NEXT(window, 1) order: -Date

請務必保留排序參數。這個新的資料欄 (window1) 含有前一季的累計平均值:

rename col:window1 to:'Amount_PriorQtr'

您可以重新設定這個數字值的格式:

set col:Amount_PriorQtr value:NUMFORMAT(Amount_PriorQtr, '###.00')

您可以使用下列轉換指令來計算淨變更值。此公式會以前一季的百分比來計算變更,然後格式化為兩位數的百分比。

derive type:single value:NUMFORMAT(((Amount - Amount_PriorQtr) / Amount_PriorQtr) * 100, '##.##') as:'NetChangePct_PriorQtr'

結果:

注意:您會發現二月和三月的 Amount_PriorQtr 都有計算值。這些值並非完整三個月的計算,因為沒有三個月的資料可以計算。由於沒有先前月份的資料,因此一月的值不存在。

DateAmountAmount_PriorQtr NetChangePct_PriorQtr
12/31/15118411.33-71.31
11/30/156435.00-98.62
10/31/15443489.33-9.47
9/30/15785368.00113.32
8/31/1577596.67-87.1
7/31/15606496.3322.1
6/30/15421630.67-33.25
5/31/15763421.3381.09
4/30/15305494.00-38.26
3/31/15824329.00150.46
2/28/15135523.00-.74.19
1/31/15523
本頁內容對您是否有任何幫助?請提供意見:

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

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