GREATERTHANEQUAL 函式

如果第一個引數大於或等於第二個引數,則傳回 true。此函式的作用等同 >= 運算子。
  • 每個引數都可以是文字整數或小數數字、傳回數字的函式,或含有數字的資料欄參照。

此函式會傳回布林值,因此可作為函式或條件式使用。

注意:在運算式中,您可以選擇使用對應的運算子來代替此函式。詳情請參閱比較運算子

基本用法

keep row: GREATERTHANEQUAL(myValue, minLimit)

輸出:保留 myValue 資料欄中值大於或等於 minLimit 資料欄值的所有資料列。

語法

derive type:single value:GREATERTHANEQUAL(value1, value2)

引數是否必要?資料類型說明
value1字串第一個值。這個值可以是數字、會傳回數字的函式,或含有數字的資料欄。
value2字串第二個值。這個值可以是數字、會傳回數字的函式,或含有數字的資料欄。

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

value1、value2

待比較的資料欄名稱、運算式或常值。

  • 如果系統找不到值,則會產生空白的字串結果。

使用須知:

是否必要?資料類型示例值
資料欄參照、函式,或數字或字串值myColumn

範例

範例 - 基本比較函式

這個簡易範例會示範可用的比較函式:

來源:

colAcolB
111
210
39
48
57
66
75
84
93
102
111

轉換:

將下列轉換指令新增至您的方案,每個比較函式各一個指令:

derive type:single value:LESSTHAN(colA, colB) as:'lt'

derive type:single value:LESSTHANEQUAL(colA, colB) as:'lte'

derive type:single value:EQUAL(colA, colB) as:'eq'

derive type:single value:NOTEQUAL(colA, colB) as:'neq'

derive type:single value:GREATERTHAN(colA, colB) as:'gt'

derive type:single value:GREATERTHANEQUAL(colA, colB) as:'gte'

結果:

colAcolBgtegtneqeqltelt
111falsefalsetruefalsetruetrue
210falsefalsetruefalsetruetrue
39falsefalsetruefalsetruetrue
48falsefalsetruefalsetruetrue
57falsefalsetruefalsetruetrue
66truefalsefalsetruetruefalse
75truetruetruefalsefalsefalse
84truetruetruefalsefalsefalse
93truetruetruefalsefalsefalse
102truetruetruefalsefalsefalse
111truetruetruefalsefalsefalse

範例:使用比較來測試範圍

瑟克爾維爾的市民只要遵循當地法令,就可以在後院開闢單一作物的農園。以下是本市農園大小的部分資料,每個住家皆以一個項目表示。相鄰的資料欄顯示範圍限制,inclusive 資料欄會指出下限值或上限值是否包含在內。

提示:在本練習中,您可以瞭解如何延伸方案,針對資料執行一些簡單的財務分析。

來源:

LocationRadius_ftminRadius_ftminInclusivemaxRadius_ftmaxInclusive
住家 155.510Y25N
住家 21210Y25N
住家 314.2510Y25N
住家 43.510Y25N
住家 52710Y25N

轉換:

將此資料載入「轉換器」頁面後,就可以開始比較資料欄中的值:

derive type:single value: LESSTHANEQUAL(Radius_ft,minRadius_ft) as:'tooSmall'

結果雖然準確,但上述轉換指令並未列入 minInclusive 值,而這個值可能會隨著步驟執行而改變。您可以刪除前一個轉換指令並改用下列指令,此指令會將其他資料欄列入計算:

derive type:single value: IF(minInclusive == 'Y',LESSTHANEQUAL(Radius_ft,minRadius_ft),LESSTHAN(Radius_ft,minRadius_ft)) as:'tooSmall'

在這個指令中,IF 函式會測試下限值是否包含在內 (允許 10 值)。如果包含下限值,系統會套用 LESSTHANEQUAL 函式;如果不包含,則會套用 LESSTHAN 函式。針對上限值,則可透過下列步驟進行測試:

derive type:single value: IF(maxInclusive == 'Y', GREATERTHANEQUAL(Radius_ft,maxRadius_ft),GREATERTHAN(Radius_ft,maxRadius_ft)) as:'tooBig'

您現在可以對這份資料進行一些分析作業。首先,您可以插入一個資料欄,其中包含超出上限值或低於下限值時每英尺的罰款金額。在第一個 derive 指令之前插入下列指令,這是超過或低於限制時每英尺的罰金 ($15.00):

derive type:single value: 15 as:'fineDollarsPerFt'

在方案結尾新增下列這行指令,以計算因農園太小而應繳交的罰金:

derive type:single value: IF(tooSmall == 'true', (minRadius_ft - Radius_ft) * fineDollarsPerFt, 0.0) as: 'fine_Dollars'

上述指令會擷取農園過小的違規案例。若要同時擷取農園過大的違規案例,請將上述指令變更如下:

derive type:single value: IF(tooSmall == 'true', (minRadius_ft - Radius_ft) * fineDollarsPerFt, if(tooBig == 'true', (Radius_ft - maxRadius_ft) * fineDollarsPerFt, '0.0')) as: 'fine_Dollars'

在原本「false」運算式 (0.0) 的位置上,上述指令新增了過大值的測試,因此所有罰金均會併入一個資料欄中。您可以將 fine_Dollars 資料欄重設為以美元為單位的格式:

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

結果:

刪除在計算中使用的資料欄並移動剩餘的資料欄後,您應該會看到類似下方的資料集:

LocationfineDollarsPerFtRadius_ftminRadius_ftminInclusivemaxRadius_ftmaxInclusivefineDollars
住家 11555.510Y25N$457.50
住家 2151210Y25N$0.00
住家 31514.2510Y25N$0.00
住家 4153.510Y25N$97.50
住家 5152710Y25N$30.00

您現在建立了所有計算過程來產生這些值,您可以變更 minRadius_ftmaxRadius_ftfineDollarsPerFt 的值來分析產生的罰金收入。在轉換中設定 fineDollarsPerFt 的值之前或之後,您可以插入下列指令:

set col: minRadius_ft value:'12.5'

新增此步驟後,選取方案中的最後一行,您就會看到 fineDollars 資料欄中的值已更新。

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

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

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