ISNULL 函式

ISNULL 函式會測試資料欄值是否含有空值。若為輸入資料欄參照,此函式會傳回 truefalse
  • NULL 函式會產生空值。請參閱 NULL 函式
  • 空值與遺漏值不一樣。
  • 如要進一步瞭解空值,請參閱管理空值一文。

基本用法

delete row:ISNULL(Qty)

輸出:刪除 Qty 資料欄中的值為空值的所有資料列。

語法

delete value:ISNULL(column_string)

引數是否必要?資料類型說明
column_string字串要套用至函式的資料欄名稱或字串常值

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

column_string

待測試是否含有空值的資料欄名稱或字串常值。

  • 如果系統找不到字串或資料欄值,則會產生空白的字串結果。
  • 不支援使用多個資料欄和萬用字元。

使用須知:

是否必要?資料類型示例值
字串常值或資料欄參照myColumn

有效的資料類型字串:

在轉換內參照資料類型時,可以使用下列字串來辨識每種類型:

附註:在 Wrangle 轉換中,值有大小寫之分。

資料類型字串
字串'String'
整數'Integer'
小數'Float'
布林值'Bool'
社會安全號碼'SSN'
電話號碼'Phone'
電子郵件地址'Emailaddress'
信用卡'Creditcard'
性別'Gender'
物件'Map'
陣列'Array'
IP 位址'Ipaddress'
網址'Url'
HTTP 代碼'Httpcodes'
郵遞區號'Zipcode'
狀態'State'
日期/時間'Datetime'

範例

範例 - 類型檢查函式

此範例會說明如何將各種類型檢查函式套用到您的資料。

  • ISVALID - 如果輸入值符合指定的資料類型,則傳回 true。請參閱 VALID 函式
  • ISMISMATCHED - 如果輸入值不符合指定的資料類型,則傳回 true。請參閱 ISMISMATCHED 函式
  • ISMISSING - 如果缺少輸入值,則傳回 true。請參閱 ISMISSING 函式
  • ISNULL - 如果輸入值為空值,則傳回 true。請參閱 ISNULL 函式
  • NULL - 產生空值。請參閱 NULL 函式

來源:

部分來源值應該會符合「州」和「整數」的資料類型。

StateQty
CA10
OR-10
WA2.5
ZZ15
ID
4

轉換:

您可以使用下列指令來測試 State 資料欄是否含有無效值:

derive type:single value: ISMISMATCHED (State, 'State')

您可以使用下列指令來測試 Qty 資料欄是否含有有效相符值:

derive type:single value: (ISVALID (Qty, 'Integer') && (Qty > 0)) as:'valid_Qty'

第一個轉換會將第 4 列和第 6 列標記為不相符。

附註:遺漏值對任何類型 (包含字串類型) 而言均為無效值。

如果資料列的 Qty 資料欄為大於零的有效整數,第二個轉換會將這些資料列全標記成有效。

下列的轉換指令會測試資料欄是否有出現遺漏值:

derive type:single value: (ISMISSING(State) || ISMISSING(Qty)) as:'missing_State_Qty'

使用 move 轉換重新整理資料欄後,資料集應會如下所示:

StateQtymismatched_Statevalid_Qtymissing_State_Qty
CA10falsetruefalse
OR-10falsefalsefalse
WA2.5falsefalsefalse
ZZ15truetruefalse
ID falsefalsetrue
4falsetruetrue

由於資料不包含空值,下列轉換會依據前述條件產生空值:

您隨後可使用 ISNULL 檢查來移除未通過上述測試的資料列:

delete row: ISNULL('status')

結果:

依據上述測試,輸出資料集會含有一個資料列:

StateQtymismatched_Statevalid_Qtymissing_State_Qtystatus
CA10falsetruefalseok

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

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

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