範例 - 類型函式

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

  • 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 說明文件
需要協助嗎?請前往我們的支援網頁