Dataset 類別

代表在 Azure Machine Learning 中探索、轉換和管理數據的資源。

數據集是公用 Web URL 或 Datastore 後方數據的參考。

針對此類別中已被取代的方法,請檢查 AbstractDataset 類別是否有改善的 API。

支援下列資料集型態:

  • TabularDataset 會以表格式格式呈現在剖析提供的檔案或檔案清單後建立的資料。

  • FileDataset 會參考資料存放區或公用 URL 中的單一或多個檔案。

若要開始使用資料集,請參閱 新增 & 註冊資料集一文,或參閱筆記本 https://aka.ms/tabulardataset-samplenotebookhttps://aka.ms/filedataset-samplenotebook

初始化 Dataset 物件。

若要取得已經向工作區註冊的數據集,請使用 get 方法。

繼承
builtins.object
Dataset

建構函式

Dataset(definition, workspace=None, name=None, id=None)

參數

definition
<xref:azureml.data.DatasetDefinition>
必要

數據集定義。

workspace
Workspace
必要

數據集所在的工作區。

name
str
必要

數據集的名稱。

id
str
必要

數據集的唯一標識碼。

備註

Dataset 類別會公開兩個便利類別屬性, (FileTabular) 您可以使用來建立數據集,而不需使用對應的 Factory 方法。 例如,若要使用下列屬性建立數據集:

  • Dataset.Tabular.from_delimited_files()

  • Dataset.File.from_files()

您也可以直接呼叫 和 FileDatasetFactory中所TabularDatasetFactory定義類別的對應 Factory 方法,以建立新的 TabularDataset 或 FileDataset。

下列範例說明如何建立指向資料存放區中單一路徑的 TabularDataset。


   from azureml.core import Dataset
   dataset = Dataset.Tabular.from_delimited_files(path = [(datastore, 'train-dataset/tabular/iris.csv')])

   # preview the first 3 rows of the dataset
   dataset.take(3).to_pandas_dataframe()

完整範例可從 https://github.com/Azure/MachineLearningNotebooks/blob/master/how-to-use-azureml/work-with-data/datasets-tutorial/train-with-datasets/train-with-datasets.ipynb

變數

azureml.core.Dataset.File

類別屬性,可讓您存取 FileDatasetFactory 方法來建立新的 FileDataset 物件。 使用量:Dataset.File.from_files () 。

azureml.core.Dataset.Tabular

類別屬性,可讓您存取 TabularDatasetFactory 方法來建立新的 TabularDataset 物件。 使用量:Dataset.Tabular.from_delimited_files () 。

方法

archive

封存使用中或已淘汰的數據集。

注意

這個方法已被取代,不再受到支援。

如需詳細資訊,請參閱https://aka.ms/dataset-deprecation

auto_read_files

分析位於指定路徑 (檔案) ,並傳回新的數據集。

注意

這個方法已被取代,不再受到支援。

建議使用 Dataset.Tabular.from_* 方法來讀取檔案。 如需詳細資訊,請參閱https://aka.ms/dataset-deprecation

compare_profiles

比較目前數據集的配置檔與另一個數據集配置檔。

這會顯示兩個數據集之間的摘要統計數據差異。 參數 'rhs_dataset' 代表「右側」,只是第二個數據集。 ) 目前數據集物件 (第一個數據集會被視為「左側」。

注意

這個方法已被取代,不再受到支援。

如需詳細資訊,請參閱https://aka.ms/dataset-deprecation

create_snapshot

建立已註冊數據集的快照集。

注意

這個方法已被取代,不再受到支援。

如需詳細資訊,請參閱https://aka.ms/dataset-deprecation

delete_snapshot

依名稱刪除數據集的快照集。

注意

這個方法已被取代,不再受到支援。

如需詳細資訊,請參閱https://aka.ms/dataset-deprecation

deprecate

由另一個數據集取代工作區中的使用中數據集。

注意

這個方法已被取代,不再受到支援。

如需詳細資訊,請參閱https://aka.ms/dataset-deprecation

diff

使用rhs_dataset來差異目前的數據集。

注意

這個方法已被取代,不再受到支援。

如需詳細資訊,請參閱https://aka.ms/dataset-deprecation

from_binary_files

從二進位檔建立未註冊的記憶體內部數據集。

注意

這個方法已被取代,不再受到支援。

建議改用Dataset.File.from_files。 如需詳細資訊,請參閱https://aka.ms/dataset-deprecation

from_delimited_files

從分隔的檔案建立未註冊的記憶體內部數據集。

注意

這個方法已被取代,不再受到支援。

建議改用 Dataset.Tabular.from_delimited_files。 如需詳細資訊,請參閱https://aka.ms/dataset-deprecation


   # Create a dataset from delimited files with header option as ALL_FILES_HAVE_SAME_HEADERS
   dataset = Dataset.Tabular.from_delimited_files(path=(datastore, 'data/crime-spring.csv'),
       header='ALL_FILES_HAVE_SAME_HEADERS')

   df = dataset.to_pandas_dataframe()
from_excel_files

從 Excel 檔案建立未註冊的記憶體內部數據集。

注意

這個方法已被取代,不再受到支援。

如需詳細資訊,請參閱https://aka.ms/dataset-deprecation

from_json_files

從 JSON 檔案建立未註冊的記憶體內部數據集。

注意

這個方法已被取代,不再受到支援。

建議改用 Dataset.Tabular.from_json_lines_files 從 JSON 行檔案讀取。 如需詳細資訊,請參閱https://aka.ms/dataset-deprecation

from_pandas_dataframe

從 pandas 數據框架建立未註冊的記憶體內部數據集。

注意

這個方法已被取代,不再受到支援。

建議改用 Dataset.Tabular.register_pandas_dataframe。 如需詳細資訊,請參閱https://aka.ms/dataset-deprecation

from_parquet_files

從 parquet 檔案建立未註冊的記憶體內部數據集。

注意

這個方法已被取代,不再受到支援。

建議改用 Dataset.Tabular.from_parquet_files。 如需詳細資訊,請參閱https://aka.ms/dataset-deprecation

from_sql_query

從 SQL 查詢建立未註冊的記憶體內部數據集。

注意

這個方法已被取代,不再受到支援。

建議改用 Dataset.Tabular.from_sql_query。 如需詳細資訊,請參閱https://aka.ms/dataset-deprecation

generate_profile

產生數據集的新配置檔。

注意

這個方法已被取代,不再受到支援。

如需詳細資訊,請參閱https://aka.ms/dataset-deprecation

get

藉由指定其名稱或標識符,取得工作區中已經存在的數據集。

注意

這個方法已被取代,不再受到支援。

建議改用 get_by_nameget_by_id 。 如需詳細資訊,請參閱https://aka.ms/dataset-deprecation

get_all

取得工作區中的所有已註冊數據集。

get_all_snapshots

取得數據集的所有快照集。

注意

這個方法已被取代,不再受到支援。

如需詳細資訊,請參閱https://aka.ms/dataset-deprecation

get_by_id

取得儲存至工作區的數據集。

get_by_name

依其註冊名稱從工作區取得已註冊的數據集。

get_definition

取得數據集的特定定義。

注意

這個方法已被取代,不再受到支援。

如需詳細資訊,請參閱https://aka.ms/dataset-deprecation

get_definitions

取得數據集的所有定義。

注意

這個方法已被取代,不再受到支援。

如需詳細資訊,請參閱https://aka.ms/dataset-deprecation

get_profile

取得稍早計算數據集的摘要統計數據。

注意

這個方法已被取代,不再受到支援。

如需詳細資訊,請參閱https://aka.ms/dataset-deprecation

get_snapshot

依名稱取得數據集的快照集。

注意

這個方法已被取代,不再受到支援。

如需詳細資訊,請參閱https://aka.ms/dataset-deprecation

head

從這個數據集提取指定的記錄數目,並將其傳回為 DataFrame。

注意

這個方法已被取代,不再受到支援。

如需詳細資訊,請參閱https://aka.ms/dataset-deprecation

list

列出工作區中的所有數據集,包括屬性等於 False 的 is_visible 數據集。

注意

這個方法已被取代,不再受到支援。

建議改用 get_all 。 如需詳細資訊,請參閱https://aka.ms/dataset-deprecation

reactivate

重新啟用封存或已被取代的數據集。

注意

這個方法已被取代,不再受到支援。

如需詳細資訊,請參閱https://aka.ms/dataset-deprecation

register

在工作區中註冊數據集,使其可供工作區的其他使用者使用。

注意

這個方法已被取代,不再受到支援。

建議改用 register 。 如需詳細資訊,請參閱https://aka.ms/dataset-deprecation

sample

使用提供的取樣策略和參數,從來源數據集產生新的範例。

注意

這個方法已被取代,不再受到支援。

TabularDataset在 Dataset.Tabular 上呼叫靜態方法,並在該處使用 方法,以take_sample建立 。 如需詳細資訊,請參閱https://aka.ms/dataset-deprecation

to_pandas_dataframe

執行此數據集定義所定義的轉換管線,以建立 Pandas 數據框架。

注意

這個方法已被取代,不再受到支援。

TabularDataset在 Dataset.Tabular 上呼叫靜態方法,並在該處使用 方法,以to_pandas_dataframe建立 。 如需詳細資訊,請參閱https://aka.ms/dataset-deprecation

to_spark_dataframe

建立 Spark DataFrame,以執行此數據集定義所定義的轉換管線。

注意

這個方法已被取代,不再受到支援。

TabularDataset在 Dataset.Tabular 上呼叫靜態方法,並在該處使用 方法,以to_spark_dataframe建立 。 如需詳細資訊,請參閱https://aka.ms/dataset-deprecation

update

更新工作區中的數據集可變動屬性,並從工作區傳回更新的數據集。

注意

這個方法已被取代,不再受到支援。

如需詳細資訊,請參閱https://aka.ms/dataset-deprecation

update_definition

更新數據集定義。

注意

這個方法已被取代,不再受到支援。

如需詳細資訊,請參閱https://aka.ms/dataset-deprecation

archive

封存使用中或已淘汰的數據集。

注意

這個方法已被取代,不再受到支援。

如需詳細資訊,請參閱https://aka.ms/dataset-deprecation

archive()

傳回

無。

傳回類型

備註

封存之後,任何嘗試取用數據集都會產生錯誤。 如果意外封存,重新啟動將會啟動它。

auto_read_files

分析位於指定路徑 (檔案) ,並傳回新的數據集。

注意

這個方法已被取代,不再受到支援。

建議使用 Dataset.Tabular.from_* 方法來讀取檔案。 如需詳細資訊,請參閱https://aka.ms/dataset-deprecation

static auto_read_files(path, include_path=False, partition_format=None)

參數

path
DataReferencestr
必要

已註冊數據存放區中的數據路徑、本機路徑或 HTTP URL (CSV/TSV) 。

include_path
bool
必要

是否要包含包含包含讀取資料之檔案路徑的數據行。 讀取多個檔案時很有用,並想要知道特定記錄的來源檔案。 如果數據行中有您想要的檔案路徑或名稱中的資訊,也很有用。

partition_format
str
必要

在路徑中指定數據分割格式,並從格式為 '{x}' 和 datetime 數據行建立字串數據行,格式為 '{x:yyyy/MM/dd/HH/mm/ss}',其中 'yyyy'、'MM'、'HH'、'mm' 和 'ss' 是用來在日期時間類型外加年、月、日、小時、分鐘和秒。 格式應該從第一個數據分割索引鍵的位置開始,直到檔案路徑結尾為止。 例如,假設檔案路徑 '../Accounts/2019/01/01/data.csv',其中數據是以部門名稱和時間分割,我們可以定義 '/{Department}/{PartitionDate:yyyy/MM/dd}/data.csv' 來建立字符串類型的數據行 'Department',以及 datetime 類型的 'PartitionDate' 數據行。

傳回

Dataset 物件。

傳回類型

備註

當自動偵測到檔格式和分隔符時,請使用這個方法。

建立數據集之後,您應該使用 get_profile 來列出每個數據行的偵測到的數據行類型和摘要統計數據。

傳回的數據集未向工作區註冊。

compare_profiles

比較目前數據集的配置檔與另一個數據集配置檔。

這會顯示兩個數據集之間的摘要統計數據差異。 參數 'rhs_dataset' 代表「右側」,只是第二個數據集。 ) 目前數據集物件 (第一個數據集會被視為「左側」。

注意

這個方法已被取代,不再受到支援。

如需詳細資訊,請參閱https://aka.ms/dataset-deprecation

compare_profiles(rhs_dataset, profile_arguments={}, include_columns=None, exclude_columns=None, histogram_compare_method=HistogramCompareMethod.WASSERSTEIN)

參數

rhs_dataset
Dataset
必要

第二個數據集,也稱為「右側」數據集以進行比較。

profile_arguments
dict
必要

特定配置檔的自變數。

include_columns
list[str]
必要

要包含在比較中的數據行名稱清單。

exclude_columns
list[str]
必要

比較中要排除的數據行名稱清單。

histogram_compare_method
HistogramCompareMethod
必要

描述比較方法的列舉,例如:Wasser一或能源

傳回

兩個數據集配置檔之間的差異。

傳回類型

<xref:azureml.dataprep.api.engineapi.typedefinitions.DataProfileDifference>

備註

這僅適用於已註冊的數據集。 如果目前數據集的配置檔不存在,則引發例外狀況。 若為未註冊的數據集,請使用 profile.compare 方法。

create_snapshot

建立已註冊數據集的快照集。

注意

這個方法已被取代,不再受到支援。

如需詳細資訊,請參閱https://aka.ms/dataset-deprecation

create_snapshot(snapshot_name, compute_target=None, create_data_snapshot=False, target_datastore=None)

參數

snapshot_name
str
必要

快照集名稱。 快照集名稱在數據集內應該是唯一的。

compute_target
Union[ComputeTarget, str]
必要

執行快照集配置檔建立的選擇性計算目標。 如果省略,則會使用本機計算。

create_data_snapshot
bool
必要

如果為 True,則會建立數據的具體化複本。

target_datastore
Union[AbstractAzureStorageDatastore, str]
必要

要儲存快照集的目標數據存放區。 如果省略,則會在工作區的預設記憶體中建立快照集。

傳回

數據集快照集物件。

傳回類型

備註

快照集擷取基礎數據的時間點摘要統計數據,以及數據本身的選擇性複本。 若要深入瞭解如何建立快照集,請移至 https://aka.ms/azureml/howto/createsnapshots

delete_snapshot

依名稱刪除數據集的快照集。

注意

這個方法已被取代,不再受到支援。

如需詳細資訊,請參閱https://aka.ms/dataset-deprecation

delete_snapshot(snapshot_name)

參數

snapshot_name
str
必要

快照集名稱。

傳回

無。

傳回類型

備註

使用此方法可釋放儲存在快照集內不再需要之數據所耗用的記憶體。

deprecate

由另一個數據集取代工作區中的使用中數據集。

注意

這個方法已被取代,不再受到支援。

如需詳細資訊,請參閱https://aka.ms/dataset-deprecation

deprecate(deprecate_by_dataset_id)

參數

deprecate_by_dataset_id
str
必要

這是此數據集所要取代的數據集標識碼。

傳回

無。

傳回類型

備註

已取代的數據集會在取用時記錄警告。 取代數據集會取代其所有定義。

仍然可以取用已被取代的數據集。 若要完全封鎖數據集被取用,請封存它。

如果意外淘汰,重新啟動將會啟動它。

diff

使用rhs_dataset來差異目前的數據集。

注意

這個方法已被取代,不再受到支援。

如需詳細資訊,請參閱https://aka.ms/dataset-deprecation

diff(rhs_dataset, compute_target=None, columns=None)

參數

rhs_dataset
Dataset
必要

另一個數據集也稱為右手數據集以進行比較

compute_target
Union[ComputeTarget, str]
必要

要執行差異的計算目標。 如果省略,則會使用本機計算。

columns
list[str]
必要

要包含在差異中的數據行名稱清單。

傳回

數據集動作執行物件。

傳回類型

from_binary_files

從二進位檔建立未註冊的記憶體內部數據集。

注意

這個方法已被取代,不再受到支援。

建議改用Dataset.File.from_files。 如需詳細資訊,請參閱https://aka.ms/dataset-deprecation

static from_binary_files(path)

參數

path
DataReferencestr
必要

已註冊數據存放區或本機路徑中的數據路徑。

傳回

Dataset 物件。

傳回類型

備註

使用此方法將檔案讀取為二進位數據的數據流。 傳回每個檔案讀取的一個檔案數據流物件。 當您讀取影像、影片、音訊或其他二進位數據時,請使用此方法。

get_profilecreate_snapshot 不適用於此方法所建立的數據集。

傳回的數據集未向工作區註冊。

from_delimited_files

從分隔的檔案建立未註冊的記憶體內部數據集。

注意

這個方法已被取代,不再受到支援。

建議改用 Dataset.Tabular.from_delimited_files。 如需詳細資訊,請參閱https://aka.ms/dataset-deprecation


   # Create a dataset from delimited files with header option as ALL_FILES_HAVE_SAME_HEADERS
   dataset = Dataset.Tabular.from_delimited_files(path=(datastore, 'data/crime-spring.csv'),
       header='ALL_FILES_HAVE_SAME_HEADERS')

   df = dataset.to_pandas_dataframe()
static from_delimited_files(path, separator=',', header=PromoteHeadersBehavior.ALL_FILES_HAVE_SAME_HEADERS, encoding=FileEncoding.UTF8, quoting=False, infer_column_types=True, skip_rows=0, skip_mode=SkipLinesBehavior.NO_ROWS, comment=None, include_path=False, archive_options=None, partition_format=None)

參數

path
DataReferencestr
必要

已註冊數據存放區、本機路徑或 HTTP URL 中的數據路徑。

separator
str
必要

用來分割數據行的分隔符。

header
PromoteHeadersBehavior
必要

控制從檔案讀取時,數據行標頭的升級方式。

encoding
FileEncoding
必要

正在讀取之檔案的編碼方式。

quoting
bool
必要

指定如何處理引號內的新行字元。 默認 (False) 是將新行字元解譯為起始新數據列,不論新行字元是否在引號內。 如果設定為 True,引號內的新行字元將不會產生新的數據列,而檔案讀取速度會變慢。

infer_column_types
bool
必要

指出是否推斷數據行數據類型。

skip_rows
int
必要

讀取檔案 () 中要略過的數據列數目。

skip_mode
SkipLinesBehavior
必要

控制從檔案讀取時略過數據列的方式。

comment
str
必要

用來指出所讀取檔案中批注行的字元。 將會略過以這個字串開頭的行。

include_path
bool
必要

是否要包含包含包含讀取資料之檔案路徑的數據行。 當您讀取多個檔案,並想要知道特定記錄的來源檔案,或保留檔案路徑中的實用資訊時,這會很有用。

archive_options
<xref:azureml.dataprep.ArchiveOptions>
必要

封存盤案的選項,包括封存類型和專案 Glob 模式。 我們目前僅支援 ZIP 作為封存類型。 例如,指定


   archive_options = ArchiveOptions(archive_type = ArchiveType.ZIP, entry_glob = '*10-20.csv')

會在 ZIP 中讀取名稱結尾為 「10-20.csv」 的所有檔案。

partition_format
str
必要

在路徑中指定數據分割格式,並從格式為 '{x}' 和 datetime 數據行建立字串數據行,格式為 '{x:yyyy/MM/dd/HH/mm/ss}',其中 'yyyy'、'MM'、'HH'、'mm' 和 'ss' 是用來在日期時間類型外加年、月、日、小時、分鐘和秒。 格式應該從第一個數據分割索引鍵的位置開始,直到檔案路徑結尾為止。 例如,假設檔案路徑 '../Accounts/2019/01/01/data.csv',其中數據是以部門名稱和時間分割,我們可以定義 '/{Department}/{PartitionDate:yyyy/MM/dd}/data.csv' 來建立字符串類型的數據行 'Department',以及 datetime 類型的 'PartitionDate' 數據行。

傳回

數據集物件。

傳回類型

備註

當您想要控制所使用的選項時,請使用這個方法來讀取分隔的文字檔。

建立數據集之後,您應該使用 get_profile 來列出每個數據行的偵測到的數據行類型和摘要統計數據。

傳回的數據集未向工作區註冊。

from_excel_files

從 Excel 檔案建立未註冊的記憶體內部數據集。

注意

這個方法已被取代,不再受到支援。

如需詳細資訊,請參閱https://aka.ms/dataset-deprecation

static from_excel_files(path, sheet_name=None, use_column_headers=False, skip_rows=0, include_path=False, infer_column_types=True, partition_format=None)

參數

path
DataReferencestr
必要

已註冊數據存放區中的數據路徑或本機路徑。

sheet_name
str
必要

要載入的 Excel 工作表名稱。 根據預設,我們會從每個Excel檔案讀取第一張工作表。

use_column_headers
bool
必要

控制是否要使用第一個數據列做為數據行標頭。

skip_rows
int
必要

要讀取的檔案 (讀取) ,要略過多少個數據列。

include_path
bool
必要

是否要包含包含讀取資料之檔案路徑的數據行。 當您讀取多個檔案,並想要知道特定記錄的來源檔案,或保留檔案路徑中的實用資訊時,這會很有用。

infer_column_types
bool
必要

如果為 true,則會推斷數據行數據類型。

partition_format
str
必要

在路徑中指定數據分割格式,並從格式 '{x}' 和 datetime 數據行建立字串數據行,格式為 '{x:yyyy/MM/dd/HH/mm/ss}',其中 'yyyy'、'MM'、'dd'、'HH'、'mm' 和 'ss' 是用來附加日期時間類型的年、月、日、小時、分鐘和秒。 格式應該從第一個分割區索引鍵的位置開始,直到檔案路徑結尾為止。 例如,假設檔案路徑 '../Accounts/2019/01/01/data.xlsx',其中數據會依部門名稱和時間分割,我們可以定義 '/{Department}/{PartitionDate:yyyy/MM/dd}/data.xlsx' 來建立字符串類型的數據行 'Department',以及 datetime 類型的 'PartitionDate' 數據行。

傳回

數據集物件。

傳回類型

備註

使用此方法可讀取 .xlsx 格式的 Excel 檔案。 數據可以從每個 Excel 檔案中的一個工作表讀取。 建立數據集之後,您應該使用 get_profile 來列出每個數據行的偵測到的數據行類型和摘要統計數據。 傳回的數據集未向工作區註冊。

from_json_files

從 JSON 檔案建立未註冊的記憶體內部數據集。

注意

這個方法已被取代,不再受到支援。

建議改用 Dataset.Tabular.from_json_lines_files 從 JSON 行檔案讀取。 如需詳細資訊,請參閱https://aka.ms/dataset-deprecation

static from_json_files(path, encoding=FileEncoding.UTF8, flatten_nested_arrays=False, include_path=False, partition_format=None)

參數

path
DataReferencestr
必要

您要載入和剖析的檔案路徑 () 或資料夾 () 。 它可以是本機路徑或 Azure Blob URL。 支援 Globbing。 例如,您可以使用 path = “./data*” 來讀取名稱開頭為 “data” 的所有檔案。

encoding
FileEncoding
必要

正在讀取之檔案的編碼方式。

flatten_nested_arrays
bool
必要

屬性控制程式的巢狀陣列處理。 如果您選擇扁平化巢狀 JSON 陣列,可能會導致較大的數據列數目。

include_path
bool
必要

是否要包含包含資料讀取路徑的數據行。 當您讀取多個檔案,而且可能想要知道特定記錄的來源檔案,或保留檔案路徑中的實用資訊時,這會很有用。

partition_format
str
必要

在路徑中指定數據分割格式,並從格式 '{x}' 和 datetime 數據行建立字串數據行,格式為 '{x:yyyy/MM/dd/HH/mm/ss}',其中 'yyyy'、'MM'、'dd'、'HH'、'mm' 和 'ss' 是用來附加日期時間類型的年、月、日、小時、分鐘和秒。 格式應該從第一個分割區索引鍵的位置開始,直到檔案路徑結尾為止。 例如,假設檔案路徑 '../Accounts/2019/01/01/data.json' 且數據會依部門名稱和時間分割,我們可以定義 '/{Department}/{PartitionDate:yyyy/MM/dd}/data.json' 來建立字符串類型的數據行 'Department',以及 datetime 類型的 'PartitionDate' 數據行。

傳回

本機 Dataset 物件。

傳回類型

from_pandas_dataframe

從 pandas 數據框架建立未註冊的記憶體內部數據集。

注意

這個方法已被取代,不再受到支援。

建議改用 Dataset.Tabular.register_pandas_dataframe。 如需詳細資訊,請參閱https://aka.ms/dataset-deprecation

static from_pandas_dataframe(dataframe, path=None, in_memory=False)

參數

dataframe
DataFrame
必要

Pandas DataFrame。

path
Union[DataReference, str]
必要

已註冊數據存放區或本機資料夾路徑中的數據路徑。

in_memory
bool
必要

是否要從記憶體讀取 DataFrame,而不是保存到磁碟。

傳回

Dataset 物件。

傳回類型

備註

使用這個方法可將 Pandas 數據框架轉換成 Dataset 物件。 此方法建立的數據集無法註冊,因為數據來自記憶體。

如果 為 in_memory False,Pandas DataFrame 會轉換成本機 CSV 檔案。 如果 pat 屬於 DataReference 類型,則 Pandas 框架會上傳至數據存放區,而數據集將會以 DataReference 為基礎。 如果 ''path' 是本機資料夾,則會從無法刪除的本機檔案建立數據集。

如果目前的 DataReference 不是資料夾路徑,則引發例外狀況。

from_parquet_files

從 parquet 檔案建立未註冊的記憶體內部數據集。

注意

這個方法已被取代,不再受到支援。

建議改用 Dataset.Tabular.from_parquet_files。 如需詳細資訊,請參閱https://aka.ms/dataset-deprecation

static from_parquet_files(path, include_path=False, partition_format=None)

參數

path
DataReferencestr
必要

已註冊數據存放區中的數據路徑或本機路徑。

include_path
bool
必要

是否要包含包含讀取資料之檔案路徑的數據行。 當您讀取多個檔案,並想要知道特定記錄的來源檔案,或保留檔案路徑中的實用資訊時,這會很有用。

partition_format
str
必要

在路徑中指定數據分割格式,並從格式 '{x}' 和 datetime 數據行建立字串數據行,格式為 '{x:yyyy/MM/dd/HH/mm/ss}',其中 'yyyy'、'MM'、'dd'、'HH'、'mm' 和 'ss' 是用來附加日期時間類型的年、月、日、小時、分鐘和秒。 格式應該從第一個分割區索引鍵的位置開始,直到檔案路徑結尾為止。 例如,假設檔案路徑 '../Accounts/2019/01/01/data.parquet',其中數據會依部門名稱和時間分割,我們可以定義 '/{Department}/{PartitionDate:yyyy/MM/dd}/data.parquet' 來建立字符串類型的數據行 'Department',以及 datetime 類型的 'PartitionDate' 數據行。

傳回

數據集物件。

傳回類型

備註

使用這個方法來讀取 Parquet 檔案。

建立數據集之後,您應該使用 get_profile 來列出每個數據行的偵測到的數據行類型和摘要統計數據。

傳回的數據集未向工作區註冊。

from_sql_query

從 SQL 查詢建立未註冊的記憶體內部數據集。

注意

這個方法已被取代,不再受到支援。

建議改用 Dataset.Tabular.from_sql_query。 如需詳細資訊,請參閱https://aka.ms/dataset-deprecation

static from_sql_query(data_source, query)

參數

data_source
AzureSqlDatabaseDatastore
必要

Azure SQL 資料存放區的詳細數據。

query
str
必要

要執行以讀取數據的查詢。

傳回

本機 Dataset 物件。

傳回類型

generate_profile

產生數據集的新配置檔。

注意

這個方法已被取代,不再受到支援。

如需詳細資訊,請參閱https://aka.ms/dataset-deprecation

generate_profile(compute_target=None, workspace=None, arguments=None)

參數

compute_target
Union[ComputeTarget, str]
必要

執行快照集配置檔建立的選擇性計算目標。 如果省略,則會使用本機計算。

workspace
Workspace
必要

暫時性 (取消註冊) 數據集所需的工作區。

arguments
dict[str, object]
必要

配置檔自變數。 有效的自變數包括:

  • bool 類型的 『include_stype_counts』。 檢查值看起來是否類似一些已知的語意類型,例如電子郵件位址、IP 位址 (V4/V6) 、US 電話號碼、US 郵遞區號、緯度/經度。 啟用這項功能會影響效能。

  • int 類型的 『number_of_histogram_bins』。表示要用於數值數據的直方圖量化數目。 預設值是 10。

傳回

數據集動作執行物件。

傳回類型

備註

同步呼叫會封鎖直到完成為止。 呼叫 get_result 以取得動作的結果。

get

藉由指定其名稱或標識符,取得工作區中已經存在的數據集。

注意

這個方法已被取代,不再受到支援。

建議改用 get_by_nameget_by_id 。 如需詳細資訊,請參閱https://aka.ms/dataset-deprecation

static get(workspace, name=None, id=None)

參數

workspace
Workspace
必要

建立數據集的現有 AzureML 工作區。

name
str
必要

要擷取的數據集名稱。

id
str
必要

工作區中數據集的唯一標識符。

傳回

具有指定名稱或識別碼的數據集。

傳回類型

備註

您可以提供 nameid。 如果:

  • 同時 name 指定 和 id ,但不符合。

  • 工作區中找不到具有指定 name 或的 id 數據集。

get_all

取得工作區中的所有已註冊數據集。

get_all()

參數

workspace
Workspace
必要

已註冊數據集的現有 AzureML 工作區。

傳回

TabularDataset 和 FileDataset 物件的字典,其註冊名稱為索引鍵。

傳回類型

get_all_snapshots

取得數據集的所有快照集。

注意

這個方法已被取代,不再受到支援。

如需詳細資訊,請參閱https://aka.ms/dataset-deprecation

get_all_snapshots()

傳回

數據集快照集的清單。

傳回類型

get_by_id

取得儲存至工作區的數據集。

get_by_id(id, **kwargs)

參數

workspace
Workspace
必要

儲存數據集的現有 AzureML 工作區。

id
str
必要

數據集的識別碼。

傳回

數據集物件。 如果數據集已註冊,也會傳回其註冊名稱和版本。

傳回類型

get_by_name

依其註冊名稱從工作區取得已註冊的數據集。

get_by_name(name, version='latest', **kwargs)

參數

workspace
Workspace
必要

已註冊數據集的現有 AzureML 工作區。

name
str
必要

註冊名稱。

version
int
必要

註冊版本。 默認為 『latest』。

傳回

已註冊的數據集物件。

傳回類型

get_definition

取得數據集的特定定義。

注意

這個方法已被取代,不再受到支援。

如需詳細資訊,請參閱https://aka.ms/dataset-deprecation

get_definition(version_id=None)

參數

version_id
str
必要

數據集定義的版本識別碼

傳回

數據集定義。

傳回類型

備註

如果 version_id 提供 ,則 Azure Machine Learning 會嘗試取得對應至該版本的定義。 如果該版本不存在,則會擲回例外狀況。 如果 version_id 省略 ,則會擷取最新版本。

get_definitions

取得數據集的所有定義。

注意

這個方法已被取代,不再受到支援。

如需詳細資訊,請參閱https://aka.ms/dataset-deprecation

get_definitions()

傳回

數據集定義的字典。

傳回類型

備註

在 AzureML 工作區中註冊的數據集可以有多個定義,每個定義都是藉由呼叫 update_definition來建立。 每個定義都有唯一標識碼。 目前的定義是建立的最新定義。

針對未註冊的數據集,只有一個定義存在。

get_profile

取得稍早計算數據集的摘要統計數據。

注意

這個方法已被取代,不再受到支援。

如需詳細資訊,請參閱https://aka.ms/dataset-deprecation

get_profile(arguments=None, generate_if_not_exist=True, workspace=None, compute_target=None)

參數

arguments
dict[str, object]
必要

配置檔自變數。

generate_if_not_exist
bool
必要

指出是否要在配置檔不存在時產生配置檔。

workspace
Workspace
必要

暫時性 (取消註冊) 數據集所需的工作區。

compute_target
Union[ComputeTarget, str]
必要

執行配置檔動作的計算目標。

傳回

數據集的 DataProfile。

傳回類型

<xref:azureml.dataprep.DataProfile>

備註

針對向 Azure Machine Learning 工作區註冊的數據集,此方法會擷取先前藉由呼叫 get_profile 它是否仍然有效所建立的現有配置檔。 在數據集中偵測到變更的數據時,配置檔會失效,或自變數與產生配置檔時所使用的自變數 get_profile 不同。 如果配置檔不存在或失效, generate_if_not_exist 將會判斷是否產生新的配置檔。

對於未向 Azure Machine Learning 工作區註冊的數據集,此方法一律會執行 generate_profile 並傳回結果。

get_snapshot

依名稱取得數據集的快照集。

注意

這個方法已被取代,不再受到支援。

如需詳細資訊,請參閱https://aka.ms/dataset-deprecation

get_snapshot(snapshot_name)

參數

snapshot_name
str
必要

快照集名稱。

傳回

數據集快照集物件。

傳回類型

head

從這個數據集提取指定的記錄數目,並將其傳回為 DataFrame。

注意

這個方法已被取代,不再受到支援。

如需詳細資訊,請參閱https://aka.ms/dataset-deprecation

head(count)

參數

count
int
必要

要提取的記錄數目。

傳回

Pandas DataFrame。

傳回類型

list

列出工作區中的所有數據集,包括屬性等於 False 的 is_visible 數據集。

注意

這個方法已被取代,不再受到支援。

建議改用 get_all 。 如需詳細資訊,請參閱https://aka.ms/dataset-deprecation

static list(workspace)

參數

workspace
Workspace
必要

您想要擷取資料集清單的工作區。

傳回

數據集物件的清單。

傳回類型

reactivate

重新啟用封存或已被取代的數據集。

注意

這個方法已被取代,不再受到支援。

如需詳細資訊,請參閱https://aka.ms/dataset-deprecation

reactivate()

傳回

無。

傳回類型

register

在工作區中註冊數據集,使其可供工作區的其他使用者使用。

注意

這個方法已被取代,不再受到支援。

建議改用 register 。 如需詳細資訊,請參閱https://aka.ms/dataset-deprecation

register(workspace, name, description=None, tags=None, visible=True, exist_ok=False, update_if_exist=False)

參數

workspace
Workspace
必要

要在其中註冊數據集的 AzureML 工作區。

name
str
必要

工作區中數據集的名稱。

description
str
必要

數據集的描述。

tags
dict[str, str]
必要

要與數據集建立關聯的標記。

visible
bool
必要

指出數據集是否顯示在UI中。 如果為 False,則數據集會隱藏在 UI 中,並透過 SDK 取得。

exist_ok
bool
必要

如果為 True,則如果數據集已存在於指定的工作區中,則此方法會傳回數據集,否則會傳回錯誤。

update_if_exist
bool
必要

如果 exist_ok 為 True 且 update_if_exist 為 True,則此方法會更新定義並傳回更新的數據集。

傳回

工作區中已註冊的 Dataset 物件。

傳回類型

sample

使用提供的取樣策略和參數,從來源數據集產生新的範例。

注意

這個方法已被取代,不再受到支援。

TabularDataset在 Dataset.Tabular 上呼叫靜態方法,並在該處使用 方法,以take_sample建立 。 如需詳細資訊,請參閱https://aka.ms/dataset-deprecation

sample(sample_strategy, arguments)

參數

sample_strategy
str
必要

要使用的範例策略。 接受的值是 「top_n」、「simple_random」 或 「stratified」。

arguments
dict[str, object]
必要

字典,其中包含上述清單中 「Optional argument」 的索引鍵,以及來自 tye “Type” 資料行的值。 只能使用對應取樣方法中的自變數。 例如,針對 「simple_random」 範例類型,您只能指定具有 「probability」 和 「seed」 索引鍵的字典。

傳回

數據集物件做為原始數據集的範例。

傳回類型

備註

範例是藉由執行此數據集所定義的轉換管線來產生,然後將取樣策略和參數套用至輸出數據。 每個取樣方法都支援下列選擇性自變數:

  • top_n

    • 選擇性引數

      • n,輸入整數。 選取前 N 個數據列作為範例。
  • simple_random

    • 選擇性引數

      • probability,類型 float。 簡單隨機取樣,其中每個數據列都有選取的相同機率。 機率應該是介於 0 到 1 之間的數位。

      • seed, type float. 隨機數產生器使用。 用於可重複性。

  • 分層

    • 選擇性引數

      • columns, type list[str]。 數據中的階層數據列清單。

      • seed, type float. 隨機數產生器使用。 用於可重複性。

      • fractions, type dict[tuple, float]。 Tuple:定義階層的數據行值必須與數據行名稱的順序相同。 Float:取樣期間附加至階層的加權。

下列代碼段是不同範例方法的範例設計模式。


   # sample_strategy "top_n"
   top_n_sample_dataset = dataset.sample('top_n', {'n': 5})

   # sample_strategy "simple_random"
   simple_random_sample_dataset = dataset.sample('simple_random', {'probability': 0.3, 'seed': 10.2})

   # sample_strategy "stratified"
   fractions = {}
   fractions[('THEFT',)] = 0.5
   fractions[('DECEPTIVE PRACTICE',)] = 0.2

   # take 50% of records with "Primary Type" as THEFT and 20% of records with "Primary Type" as
   # DECEPTIVE PRACTICE into sample Dataset
   sample_dataset = dataset.sample('stratified', {'columns': ['Primary Type'], 'fractions': fractions})

to_pandas_dataframe

執行此數據集定義所定義的轉換管線,以建立 Pandas 數據框架。

注意

這個方法已被取代,不再受到支援。

TabularDataset在 Dataset.Tabular 上呼叫靜態方法,並在該處使用 方法,以to_pandas_dataframe建立 。 如需詳細資訊,請參閱https://aka.ms/dataset-deprecation

to_pandas_dataframe()

傳回

Pandas DataFrame。

傳回類型

備註

傳回記憶體中完全具體化的 Pandas DataFrame。

to_spark_dataframe

建立 Spark DataFrame,以執行此數據集定義所定義的轉換管線。

注意

這個方法已被取代,不再受到支援。

TabularDataset在 Dataset.Tabular 上呼叫靜態方法,並在該處使用 方法,以to_spark_dataframe建立 。 如需詳細資訊,請參閱https://aka.ms/dataset-deprecation

to_spark_dataframe()

傳回

Spark DataFrame。

傳回類型

備註

傳回的 Spark 資料框架只是執行計劃,而且實際上不包含任何數據,因為會延遲評估 Spark 數據框架。

update

更新工作區中的數據集可變動屬性,並從工作區傳回更新的數據集。

注意

這個方法已被取代,不再受到支援。

如需詳細資訊,請參閱https://aka.ms/dataset-deprecation

update(name=None, description=None, tags=None, visible=None)

參數

name
str
必要

工作區中數據集的名稱。

description
str
必要

數據的描述。

tags
dict[str, str]
必要

要與數據集建立關聯的標記。

visible
bool
必要

指出數據集是否顯示在UI中。

傳回

工作區中已更新的 Dataset 物件。

傳回類型

update_definition

更新數據集定義。

注意

這個方法已被取代,不再受到支援。

如需詳細資訊,請參閱https://aka.ms/dataset-deprecation

update_definition(definition, definition_update_message)

參數

definition
DatasetDefinition
必要

這個數據集的新定義。

definition_update_message
str
必要

定義更新訊息。

傳回

工作區中已更新的 Dataset 物件。

傳回類型

備註

若要取用更新的數據集,請使用此方法所傳回的物件。

屬性

definition

傳回目前的數據集定義。

注意

這個方法已被取代,不再受到支援。

如需詳細資訊,請參閱https://aka.ms/dataset-deprecation

傳回

數據集定義。

傳回類型

備註

數據集定義是一系列步驟,可指定如何讀取和轉換數據。

在 AzureML 工作區中註冊的數據集可以有多個定義,每個定義都是藉由呼叫 update_definition來建立。 每個定義都有唯一標識碼。 擁有多個定義可讓您變更現有的數據集,而不需要中斷相依於舊定義的模型和管線。

對於未註冊的數據集,只有一個定義存在。

definition_version

傳回數據集目前定義的版本。

注意

這個方法已被取代,不再受到支援。

如需詳細資訊,請參閱https://aka.ms/dataset-deprecation

傳回

數據集定義版本。

傳回類型

str

備註

數據集定義是一系列步驟,可指定如何讀取和轉換數據。

在 AzureML 工作區中註冊的數據集可以有多個定義,每個定義都是藉由呼叫 update_definition來建立。 每個定義都有唯一標識碼。 目前的定義是所建立的最新定義,其標識碼是由這個 所傳回。

對於未註冊的數據集,只有一個定義存在。

description

傳回數據集的描述。

傳回

數據集描述。

傳回類型

str

備註

指定數據集中數據的描述,可讓工作區的使用者了解數據代表的內容,以及如何使用它。

id

如果數據集已在工作區中註冊,則傳回數據集的標識碼。 否則,傳回 None。

傳回

數據集標識碼。

傳回類型

str

is_visible

在 Azure ML 工作區 UI 中控制已註冊數據集的可見度。

注意

這個方法已被取代,不再受到支援。

如需詳細資訊,請參閱https://aka.ms/dataset-deprecation

傳回

數據集可見性。

傳回類型

備註

傳回的值:

  • True:數據集會顯示在工作區 UI 中。 預設值。

  • False:數據集隱藏在工作區 UI 中。

不會影響未註冊的數據集。

name

傳回數據集名稱。

傳回

數據集名稱。

傳回類型

str

state

傳回數據集的狀態。

注意

這個方法已被取代,不再受到支援。

如需詳細資訊,請參閱https://aka.ms/dataset-deprecation

傳回

數據集狀態。

傳回類型

str

備註

狀態的意義和效果如下所示:

  • 作用中。 作用中定義完全符合其音效,所有動作都可以在作用中定義上執行。

  • 已取代。 可以使用已被取代的定義,但每次存取基礎數據時,都會在記錄中記錄警告。

  • 存檔。 封存的定義無法用來執行任何動作。 若要對封存的定義執行動作,必須重新啟用它。

tags

傳回與數據集相關聯的標記。

傳回

數據集標籤。

傳回類型

workspace

如果數據集已在工作區中註冊,請傳回該數據集。 否則,傳回 None。

傳回

工作區。

傳回類型

Tabular

用於建立的處理站 FileDataset

的別名 TabularDatasetFactory