使用相對表達式分割數據集
重要
Machine Learning 工作室 (傳統) 的支援將於 2024 年 8 月 31 日結束。 建議您在該日期之前轉換成 Azure Machine Learning。
自 2021 年 12 月 1 日起,您將無法建立新的 Machine Learning 工作室 (傳統) 資源。 在 2024 年 8 月 31 日之前,您可以繼續使用現有的 Machine Learning 工作室 (傳統) 資源。
ML 工作室 (傳統) 文件即將淘汰,未來將不再更新。
本文說明如何在Machine Learning Studio的分割數據模組中使用相對表達式分割選項, (傳統) 。 當您需要使用數值表示式將數據集分割成定型和測試數據集時,此選項會很有説明。 例如:
- 年齡大於 40 與 40 或較新
- 測試分數 60 或更新版本與小於 60
- 排名值 1 與所有其他值
若要分割您的數據,請選擇資料中的單一數值數據行,並定義要用於評估每個數據列的表達式。 相對表達式必須包含數據行名稱、值和運算元,例如大於和小於、等於和不等於。
此選項會將數據集分成 兩 個群組。
如需機器學習實驗數據分割的一般資訊,請參閱分割數據和分割和分割。
相關工作
分割資料模組中的其他選項:
使用正則表達式分割數據:將正則表達式套用至單一文字數據行,並根據結果分割數據集
分割推薦數據集:分割建議模型中所使用的數據集。 數據集應該有三個數據行:專案、用戶和評等
使用相對表達式來分割數據集
在 Stuio 中將 分割數據 模組新增至您的實驗,並將它當做輸入連接到您想要分割的數據集。
針對 [分割模式],選取 [相對表達式分割]。
在 [ 關係表示式 ] 文本框中,於單一數據行上輸入執行數值比較運算的表達式:
數據列包含任何數值數據類型的數位,包括日期/時間數據類型。
運算式最多只能參考一個資料行名稱。
針對 AND 作業使用連字元 (&) ,並使用管道字元 (|OR 作業的) 。
支援下列運算子:
<
、、、>
、、、>=
==
<=
!=
您無法使用
(
和)
將作業分組。
For ideas, see the Examples section.
執行實驗,或以滑鼠右鍵按兩下模組,然後選取 [執行選取]。
運算式會將資料集分割成兩組資料列:一組資料列含符合條件的值,另一組則是其餘所有的資料列。
如果您需要執行其他分割作業,您可以新增第二個 *分割數據的實例,或使用 套用 SQL 轉換 模組並定義 CASE 語句。
relatve 表達式的範例
下列範例示範如何使用分割資料模組中的 [相對運算式] 選項來分割資料集:
使用日曆年度
常見的案例是依年份分割資料集。 下列運算式會選取資料行 Year
中的值大於 2010
的所有資料列。
\"Year" > 2010
日期表達式必須考慮數據行中包含的所有日期部分,而且數據行中的日期格式必須一致。
例如,在使用 格式 mmddyyyy
的日期數據行中,表達式應該如下所示:
\"Date" > 1/1/2010
使用數據行索引
下列運算式示範如何使用資料行索引,在資料集的第一個資料行中選取所含的值小於或等於為 30、但不等於 20 的所有資料列。
(\0)<=30 & !=20
使用多個分割的時間值複合作業
假設您想要分割記錄資料的資料表,以分組執行過久的查詢。 您可以在數據行 Elapsed
上使用下列相對表達式,以取得超過 1 分鐘的查詢。
\"Elapsed" >00:01:00
若要取得回應時間低於一分鐘但超過 30 秒的查詢,請在右側輸出上新增另一個 分割數據的 實例,並使用如下所示的表達式:
\"Elapsed" <:00:01:00 & >00:00:30
分割日期值的數據集
下列相對表示式會使用 資料行 中的 dt1
日期值來分割數據集。
\"dt1" > 10-08-2015
日期大於 10-08-2015 的數據列會新增至左方) 輸出數據集的第一個 (。
日期為 10-08-2015 或更早版本的數據列會新增至第二個 (右側) 輸出數據集。
技術說明
本節包含實作詳細資料、提示和常見問題集的解答。
限制
下列限制適用於資料集上的相對表示式:
- 相對表達式只能套用至數值數據類型和日期/時間數據類型。
- 相對運算式最多只能參考一個資料行名稱。
- 將 ampersand 字元 (&) 用於 AND 作業和管道字元 (|OR 作業的) 。
- 相對運算式允許下列運算子:
<
、、、>
、<=
、>=
、==
!=
- 不支援使用括弧分組作業。