Dataset 类
表示用于浏览、转换和管理 Azure 机器学习中的数据的资源。
数据集是对公共 Web URL 中 Datastore 或隐藏的数据的引用。
对于此类中弃用的方法,请检查 AbstractDataset 类中是否有改进的 API。
支持以下数据集类型:
TabularDataset 表示通过分析提供的文件或文件列表创建的表格格式的数据。
FileDataset 引用数据存储或公共 URL 中的单个或多个文件。
若要开始使用数据集,请参阅 “添加和注册数据集”一文,或查看笔记本 https://aka.ms/tabulardataset-samplenotebook 和 https://aka.ms/filedataset-samplenotebook笔记本。
初始化 Dataset 对象。
若要获取已在工作区中注册的数据集,请使用 get 方法。
构造函数
Dataset(definition, workspace=None, name=None, id=None)
参数
名称 | 说明 |
---|---|
definition
必需
|
<xref:azureml.data.DatasetDefinition>
数据集定义。 |
workspace
必需
|
数据集所在的工作区。 |
name
必需
|
数据集的名称。 |
id
必需
|
数据集的唯一标识符。 |
注解
Dataset 类公开了两个方便类属性(File
以及 Tabular
)可用于创建数据集,而无需使用相应的工厂方法。 例如,若要使用以下属性创建数据集::
Dataset.Tabular.from_delimited_files()
Dataset.File.from_files()
还可以通过直接调用在其中TabularDatasetFactoryFileDatasetFactory定义的类的相应工厂方法来创建新的 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()
变量
名称 | 说明 |
---|---|
azureml.core.Dataset.File
|
一个类属性,它提供对 FileDatasetFactory 方法的访问,用于创建新的 FileDataset 对象。 用法:Dataset.File.from_files()。 |
azureml.core.Dataset.Tabular
|
一个类属性,用于访问用于创建新的 TabularDataset 对象的 TabularDatasetFactory 方法。 用法:Dataset.Tabular.from_delimited_files()。 |
方法
archive |
存档活动或已弃用的数据集。 |
auto_read_files |
分析指定路径上的文件并返回新的数据集。 注释 此方法已弃用,不再受支持。 建议使用 Dataset.Tabular.from_* 方法来读取文件。 有关详细信息,请参阅 https://aka.ms/dataset-deprecation。 |
compare_profiles |
将当前数据集的配置文件与其他数据集配置文件进行比较。 这显示了两个数据集之间的摘要统计信息的差异。 参数“rhs_dataset”表示“右侧”,只是第二个数据集。 第一个数据集(当前数据集对象)被视为“左侧”。 |
create_snapshot |
创建已注册数据集的快照。 |
delete_snapshot |
按名称删除数据集的快照。 |
deprecate |
由另一个数据集弃用工作区中的活动数据集。 |
diff |
使用rhs_dataset对当前数据集进行差异。 |
from_binary_files |
从二进制文件创建未注册的内存中数据集。 |
from_delimited_files |
从带分隔符的文件创建未注册的内存中数据集。 注释 此方法已弃用,不再受支持。 建议改用Dataset.Tabular.from_delimited_files。 有关详细信息,请参阅 https://aka.ms/dataset-deprecation。
|
from_excel_files |
从 Excel 文件创建未注册的内存中数据集。 |
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 查询创建未注册的内存中数据集。 |
generate_profile |
为数据集生成新配置文件。 |
get |
通过指定工作区的名称或 ID 获取工作区中已存在的数据集。 |
get_all |
获取工作区中的所有已注册数据集。 |
get_all_snapshots |
获取数据集的所有快照。 |
get_by_id |
获取保存到工作区的数据集。 |
get_by_name |
按其注册名称从工作区获取已注册的数据集。 |
get_definition |
获取数据集的特定定义。 |
get_definitions |
获取数据集的所有定义。 |
get_profile |
获取前面计算的数据集的摘要统计信息。 |
get_snapshot |
按名称获取数据集的快照。 |
head |
从此数据集拉取指定的记录数,并将其作为数据帧返回。 |
list |
列出工作区中的所有数据集,包括属性 |
reactivate |
重新激活已存档或已弃用的数据集。 |
register |
在工作区中注册数据集,使其可供工作区的其他用户使用。 |
sample |
使用提供的采样策略和参数从源数据集生成新示例。 注释 此方法已弃用,不再受支持。 通过调用 Dataset.Tabular 上的静态方法并TabularDataset使用该方法创建一个take_sample。 有关详细信息,请参阅 https://aka.ms/dataset-deprecation。 |
to_pandas_dataframe |
通过执行此数据集定义定义的转换管道来创建 Pandas 数据帧。 注释 此方法已弃用,不再受支持。 通过调用 Dataset.Tabular 上的静态方法并TabularDataset使用该方法创建一个to_pandas_dataframe。 有关详细信息,请参阅 https://aka.ms/dataset-deprecation。 |
to_spark_dataframe |
创建一个 Spark 数据帧,该帧可以执行此数据集定义定义的转换管道。 注释 此方法已弃用,不再受支持。 通过调用 Dataset.Tabular 上的静态方法并TabularDataset使用该方法创建一个to_spark_dataframe。 有关详细信息,请参阅 https://aka.ms/dataset-deprecation。 |
update |
更新工作区中的数据集可变属性,并从工作区中返回更新后的数据集。 |
update_definition |
更新数据集定义。 |
archive
存档活动或已弃用的数据集。
archive()
返回
类型 | 说明 |
---|---|
没有。 |
注解
存档后,任何尝试使用数据集都将导致错误。 如果意外存档,则重新激活将激活它。
auto_read_files
分析指定路径上的文件并返回新的数据集。
注释
此方法已弃用,不再受支持。
建议使用 Dataset.Tabular.from_* 方法来读取文件。 有关详细信息,请参阅 https://aka.ms/dataset-deprecation。
static auto_read_files(path, include_path=False, partition_format=None)
参数
名称 | 说明 |
---|---|
path
必需
|
已注册数据存储、本地路径或 HTTP URL(CSV/TSV)中的数据路径。 |
include_path
必需
|
是否包含包含从中读取数据的文件的路径的列。 读取多个文件时非常有用,并且想知道特定记录源自哪个文件。 如果列中有所需文件路径或名称中的信息,则也很有用。 |
partition_format
必需
|
在路径中指定分区格式,并从格式“{x:yyyy/MM/dd/HH/mm/ss}”创建格式“{x}”和日期/时间列的字符串列,其中“yyyy”、“MM”、“dd”、“HH”、“mm”和“ss”用于为日期时间类型增加年、月、日、小时、分钟和秒。 格式应从第一个分区键的位置开始,直到文件路径的末尾。 例如,给定文件路径'.。/Accounts/2019/01/01/data.csv',其中数据按部门名称和时间进行分区,我们可以定义“/{Department}/{PartitionDate:yyyy/MM/dd}/data.csv”,以创建字符串类型和日期时间类型的“PartitionDate”列。 |
返回
类型 | 说明 |
---|---|
数据集对象。 |
注解
当自动检测到文件格式和分隔符时,请使用此方法。
创建数据集后,应用于 get_profile 列出每个列的检测到的列类型和摘要统计信息。
返回的数据集未注册到工作区。
compare_profiles
将当前数据集的配置文件与其他数据集配置文件进行比较。
这显示了两个数据集之间的摘要统计信息的差异。 参数“rhs_dataset”表示“右侧”,只是第二个数据集。 第一个数据集(当前数据集对象)被视为“左侧”。
compare_profiles(rhs_dataset, profile_arguments={}, include_columns=None, exclude_columns=None, histogram_compare_method=HistogramCompareMethod.WASSERSTEIN)
参数
名称 | 说明 |
---|---|
rhs_dataset
必需
|
第二个数据集,也称为用于比较的“右侧”数据集。 |
profile_arguments
必需
|
用于检索特定配置文件的参数。 |
include_columns
必需
|
要包含在比较中的列名列表。 |
exclude_columns
必需
|
要进行比较的列名列表。 |
histogram_compare_method
必需
|
描述比较方法的枚举,例如:Wasserstein 或 Energy |
返回
类型 | 说明 |
---|---|
<xref:azureml.dataprep.api.engineapi.typedefinitions.DataProfileDifference>
|
两个数据集配置文件之间的差异。 |
注解
这仅适用于已注册的数据集。 如果当前数据集的配置文件不存在,则引发异常。 对于未注册的数据集,请使用 profile.compare 方法。
create_snapshot
创建已注册数据集的快照。
create_snapshot(snapshot_name, compute_target=None, create_data_snapshot=False, target_datastore=None)
参数
名称 | 说明 |
---|---|
snapshot_name
必需
|
快照名称。 快照名称在数据集中应是唯一的。 |
compute_target
必需
|
可选的计算目标,用于执行快照配置文件创建。 如果省略,则使用本地计算。 |
create_data_snapshot
必需
|
如果为 True,则会创建数据的具体化副本。 |
target_datastore
必需
|
用于保存快照的目标数据存储。 如果省略,将在工作区的默认存储中创建快照。 |
返回
类型 | 说明 |
---|---|
数据集快照对象。 |
注解
快照捕获基础数据的时间点摘要统计信息和数据本身的可选副本。 若要了解有关创建快照的详细信息,请转到 https://aka.ms/azureml/howto/createsnapshots。
delete_snapshot
按名称删除数据集的快照。
delete_snapshot(snapshot_name)
参数
名称 | 说明 |
---|---|
snapshot_name
必需
|
快照名称。 |
返回
类型 | 说明 |
---|---|
没有。 |
注解
使用此选项可以释放保存在不再需要的快照中的数据消耗的存储。
deprecate
由另一个数据集弃用工作区中的活动数据集。
deprecate(deprecate_by_dataset_id)
参数
名称 | 说明 |
---|---|
deprecate_by_dataset_id
必需
|
数据集 ID,这是此数据集的预期替代项。 |
返回
类型 | 说明 |
---|---|
没有。 |
注解
已弃用的数据集会在使用时记录警告。 弃用数据集会弃用其所有定义。
仍可使用已弃用的数据集。 若要完全阻止数据集被使用,请将其存档。
如果意外弃用,则重新激活将激活它。
diff
使用rhs_dataset对当前数据集进行差异。
diff(rhs_dataset, compute_target=None, columns=None)
参数
名称 | 说明 |
---|---|
rhs_dataset
必需
|
另一个数据集也称为右侧数据集进行比较 |
compute_target
必需
|
要执行差异的计算目标。 如果省略,则使用本地计算。 |
columns
必需
|
要包含在差异中的列名列表。 |
返回
类型 | 说明 |
---|---|
数据集作运行对象。 |
from_binary_files
从二进制文件创建未注册的内存中数据集。
static from_binary_files(path)
参数
名称 | 说明 |
---|---|
path
必需
|
已注册数据存储或本地路径中的数据路径。 |
返回
类型 | 说明 |
---|---|
Dataset 对象。 |
注解
使用此方法将文件读取为二进制数据流。 每个文件读取返回一个文件流对象。 读取图像、视频、音频或其他二进制数据时,请使用此方法。
get_profile 此方法 create_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
必需
|
已注册数据存储、本地路径或 HTTP URL 中的数据路径。 |
separator
必需
|
用于拆分列的分隔符。 |
header
必需
|
控制从文件读取时如何提升列标题。 |
encoding
必需
|
正在读取的文件的编码。 |
quoting
必需
|
指定如何处理引号中的新行字符。 默认值 (False) 将新行字符解释为起始新行,而不考虑新行字符是否位于引号中。 如果设置为 True,则引号中的新行字符不会导致新行,文件读取速度将降低。 |
infer_column_types
必需
|
指示是否推断列数据类型。 |
skip_rows
必需
|
要读取的文件中要跳过的行数。 |
skip_mode
必需
|
控制从文件读取时如何跳过行。 |
comment
必需
|
用于指示正在读取的文件中的注释行的字符。 将跳过以此字符串开头的行。 |
include_path
必需
|
是否包含包含从中读取数据的文件的路径的列。 当你读取多个文件时,这非常有用,并且想要知道哪个特定记录源自哪个文件,或者要在文件路径中保留有用的信息。 |
archive_options
必需
|
<xref:azureml.dataprep.ArchiveOptions>
存档文件的选项,包括存档类型和条目 glob 模式。 目前,我们仅支持 ZIP 作为存档类型。 例如,指定
在 ZIP 中读取名称以“10-20.csv”结尾的所有文件。 |
partition_format
必需
|
在路径中指定分区格式,并从格式“{x:yyyy/MM/dd/HH/mm/ss}”创建格式“{x}”和日期/时间列的字符串列,其中“yyyy”、“MM”、“dd”、“HH”、“mm”和“ss”用于为日期时间类型增加年、月、日、小时、分钟和秒。 格式应从第一个分区键的位置开始,直到文件路径的末尾。 例如,给定文件路径'.。/Accounts/2019/01/01/data.csv',其中数据按部门名称和时间进行分区,我们可以定义“/{Department}/{PartitionDate:yyyy/MM/dd}/data.csv”,以创建字符串类型和日期时间类型的“PartitionDate”列。 |
返回
类型 | 说明 |
---|---|
数据集对象。 |
注解
如果要控制所使用的选项,请使用此方法读取带分隔符的文本文件。
创建数据集后,应用于 get_profile 列出每个列的检测到的列类型和摘要统计信息。
返回的数据集未注册到工作区。
from_excel_files
从 Excel 文件创建未注册的内存中数据集。
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
必需
|
已注册数据存储或本地路径中的数据路径。 |
sheet_name
必需
|
要加载的 Excel 工作表的名称。 默认情况下,我们从每个 Excel 文件中读取第一个工作表。 |
use_column_headers
必需
|
控制是否将第一行用作列标题。 |
skip_rows
必需
|
要读取的文件中要跳过的行数。 |
include_path
必需
|
是否包含包含从中读取数据的文件的路径的列。 当你读取多个文件时,这非常有用,并且想要知道哪个特定记录源自哪个文件,或者要在文件路径中保留有用的信息。 |
infer_column_types
必需
|
如果为 true,将推断列数据类型。 |
partition_format
必需
|
在路径中指定分区格式,并从格式“{x:yyyy/MM/dd/HH/mm/ss}”创建格式“{x}”和日期/时间列的字符串列,其中“yyyy”、“MM”、“dd”、“HH”、“mm”和“ss”用于为日期时间类型增加年、月、日、小时、分钟和秒。 格式应从第一个分区键的位置开始,直到文件路径的末尾。 例如,给定文件路径'.。/Accounts/2019/01/01/data.xlsx',其中数据按部门名称和时间进行分区,我们可以定义“/{Department}/{PartitionDate:yyyy/MM/dd}/data.xlsx”,以创建字符串类型和日期时间类型的“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
必需
|
要加载和分析的文件或文件夹的路径。 它可以是本地路径或 Azure Blob URL。 支持 Globbing。 例如,可以使用路径 = “./data*” 读取名称以“data”开头的所有文件。 |
encoding
必需
|
正在读取的文件的编码。 |
flatten_nested_arrays
必需
|
属性控制程序对嵌套数组的处理。 如果选择平展嵌套 JSON 数组,则可能会导致更多的行数。 |
include_path
必需
|
是否包含包含从中读取数据的路径的列。 当你读取多个文件时,这非常有用,并且可能想要知道特定记录源自哪个文件,或者将有用的信息保存在文件路径中。 |
partition_format
必需
|
在路径中指定分区格式,并从格式“{x:yyyy/MM/dd/HH/mm/ss}”创建格式“{x}”和日期/时间列的字符串列,其中“yyyy”、“MM”、“dd”、“HH”、“mm”和“ss”用于为日期时间类型增加年、月、日、小时、分钟和秒。 格式应从第一个分区键的位置开始,直到文件路径的末尾。 例如,给定文件路径'.。/Accounts/2019/01/01/data.json',数据按部门名称和时间进行分区,我们可以定义“/{Department}/{PartitionDate:yyyy/MM/dd}/data.json”,以创建字符串类型和日期时间类型的“PartitionDate”列。 |
返回
类型 | 说明 |
---|---|
本地数据集对象。 |
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
必需
|
Pandas 数据帧。 |
path
必需
|
已注册数据存储或本地文件夹路径中的数据路径。 |
in_memory
必需
|
是否从内存中读取数据帧,而不是保存到磁盘。 |
返回
类型 | 说明 |
---|---|
数据集对象。 |
注解
使用此方法可将 Pandas 数据帧转换为 Dataset 对象。 无法注册此方法创建的数据集,因为数据来自内存。
如果 in_memory
为 False,则 Pandas 数据帧将转换为本地 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
必需
|
已注册数据存储或本地路径中的数据路径。 |
include_path
必需
|
是否包含包含从中读取数据的文件的路径的列。 当你读取多个文件时,这非常有用,并且想要知道哪个特定记录源自哪个文件,或者要在文件路径中保留有用的信息。 |
partition_format
必需
|
在路径中指定分区格式,并从格式“{x:yyyy/MM/dd/HH/mm/ss}”创建格式“{x}”和日期/时间列的字符串列,其中“yyyy”、“MM”、“dd”、“HH”、“mm”和“ss”用于为日期时间类型增加年、月、日、小时、分钟和秒。 格式应从第一个分区键的位置开始,直到文件路径的末尾。 例如,给定文件路径'.。/Accounts/2019/01/data.parquet,其中数据按部门名称和时间对数据进行分区,我们可以定义“/{Department}/{PartitionDate:yyyy/MM/dd}/data.parquet”,以创建字符串类型的列“Department”和 datetime 类型的“PartitionDate”列。 |
返回
类型 | 说明 |
---|---|
数据集对象。 |
注解
使用此方法读取 Parquet 文件。
创建数据集后,应用于 get_profile 列出每个列的检测到的列类型和摘要统计信息。
返回的数据集未注册到工作区。
from_sql_query
从 SQL 查询创建未注册的内存中数据集。
static from_sql_query(data_source, query)
参数
名称 | 说明 |
---|---|
data_source
必需
|
Azure SQL 数据存储的详细信息。 |
query
必需
|
要执行的用于读取数据的查询。 |
返回
类型 | 说明 |
---|---|
本地数据集对象。 |
generate_profile
为数据集生成新配置文件。
generate_profile(compute_target=None, workspace=None, arguments=None)
参数
名称 | 说明 |
---|---|
compute_target
必需
|
用于执行快照配置文件创建的可选计算目标。 如果省略,则使用本地计算。 |
workspace
必需
|
工作区,对于暂时性数据集(未注册)数据集是必需的。 |
arguments
必需
|
配置文件参数。 有效参数为:
|
返回
类型 | 说明 |
---|---|
数据集作运行对象。 |
注解
同步调用将阻止,直到它完成。 调用 get_result 以获取作的结果。
get
通过指定工作区的名称或 ID 获取工作区中已存在的数据集。
static get(workspace, name=None, id=None)
参数
名称 | 说明 |
---|---|
workspace
必需
|
在其中创建数据集的现有 AzureML 工作区。 |
name
必需
|
要检索的数据集的名称。 |
id
必需
|
工作区中数据集的唯一标识符。 |
返回
类型 | 说明 |
---|---|
具有指定名称或 ID 的数据集。 |
注解
你可以提供或 name
id
. 如果出现以下情况,将引发异常:
同时
name
指定和id
未匹配。具有指定
name
或id
找不到工作区中的数据集。
get_all
获取工作区中的所有已注册数据集。
get_all()
参数
名称 | 说明 |
---|---|
workspace
必需
|
在其中注册数据集的现有 AzureML 工作区。 |
返回
类型 | 说明 |
---|---|
TabularDataset 和 FileDataset 对象的字典,这些对象按其注册名称进行键键。 |
get_all_snapshots
获取数据集的所有快照。
get_all_snapshots()
返回
类型 | 说明 |
---|---|
数据集快照列表。 |
get_by_id
获取保存到工作区的数据集。
get_by_id(id, **kwargs)
参数
名称 | 说明 |
---|---|
workspace
必需
|
保存数据集的现有 AzureML 工作区。 |
id
必需
|
数据集的 ID。 |
返回
类型 | 说明 |
---|---|
数据集对象。 如果已注册数据集,则还会返回其注册名称和版本。 |
get_by_name
按其注册名称从工作区获取已注册的数据集。
get_by_name(name, version='latest', **kwargs)
参数
名称 | 说明 |
---|---|
workspace
必需
|
在其中注册数据集的现有 AzureML 工作区。 |
name
必需
|
注册名称。 |
version
必需
|
注册版本。 默认为“latest”。 |
返回
类型 | 说明 |
---|---|
已注册的数据集对象。 |
get_definition
获取数据集的特定定义。
get_definition(version_id=None)
参数
名称 | 说明 |
---|---|
version_id
必需
|
数据集定义的版本 ID |
返回
类型 | 说明 |
---|---|
数据集定义。 |
注解
如果 version_id
已提供,则 Azure 机器学习会尝试获取与该版本对应的定义。 如果该版本不存在,则会引发异常。
如果 version_id
省略,则检索最新版本。
get_definitions
获取数据集的所有定义。
get_definitions()
返回
类型 | 说明 |
---|---|
数据集定义的字典。 |
注解
在 AzureML 工作区中注册的数据集可以有多个定义,每个定义都是通过调用 update_definition创建的。 每个定义都具有唯一标识符。 当前定义是创建的最新定义。
对于未注册的数据集,只有一个定义存在。
get_profile
获取前面计算的数据集的摘要统计信息。
get_profile(arguments=None, generate_if_not_exist=True, workspace=None, compute_target=None)
参数
名称 | 说明 |
---|---|
arguments
必需
|
配置文件参数。 |
generate_if_not_exist
必需
|
指示是否生成配置文件(如果不存在)。 |
workspace
必需
|
工作区,对于暂时性数据集(未注册)数据集是必需的。 |
compute_target
必需
|
用于执行配置文件作的计算目标。 |
返回
类型 | 说明 |
---|---|
<xref:azureml.dataprep.DataProfile>
|
数据集的 DataProfile。 |
注解
对于注册到 Azure 机器学习工作区的数据集,此方法通过调用 get_profile
之前创建的配置文件(如果仍然有效)来检索之前创建的配置文件。 在数据集中检测到已更改的数据或参数与生成配置文件时使用的参数 get_profile
不同时,配置文件将失效。 如果配置文件不存在或无效, generate_if_not_exist
将确定是否生成新的配置文件。
对于未向 Azure 机器学习工作区注册的数据集,此方法始终运行 generate_profile 并返回结果。
get_snapshot
按名称获取数据集的快照。
get_snapshot(snapshot_name)
参数
名称 | 说明 |
---|---|
snapshot_name
必需
|
快照名称。 |
返回
类型 | 说明 |
---|---|
数据集快照对象。 |
head
从此数据集拉取指定的记录数,并将其作为数据帧返回。
head(count)
参数
名称 | 说明 |
---|---|
count
必需
|
要拉取的记录数。 |
返回
类型 | 说明 |
---|---|
Pandas 数据帧。 |
list
列出工作区中的所有数据集,包括属性 is_visible
等于 False 的数据集。
static list(workspace)
参数
名称 | 说明 |
---|---|
workspace
必需
|
要为其检索数据集列表的工作区。 |
返回
类型 | 说明 |
---|---|
数据集对象列表。 |
reactivate
重新激活已存档或已弃用的数据集。
reactivate()
返回
类型 | 说明 |
---|---|
没有。 |
register
在工作区中注册数据集,使其可供工作区的其他用户使用。
register(workspace, name, description=None, tags=None, visible=True, exist_ok=False, update_if_exist=False)
参数
名称 | 说明 |
---|---|
workspace
必需
|
要在其中注册数据集的 AzureML 工作区。 |
name
必需
|
工作区中数据集的名称。 |
description
必需
|
数据集的说明。 |
tags
必需
|
要与数据集关联的标记。 |
visible
必需
|
指示数据集是否在 UI 中可见。 如果为 False,则数据集隐藏在 UI 中,并通过 SDK 提供。 |
exist_ok
必需
|
如果为 True,则该方法返回数据集(如果数据集已存在于给定工作区中),否则返回错误。 |
update_if_exist
必需
|
如果 |
返回
类型 | 说明 |
---|---|
工作区中已注册的 Dataset 对象。 |
sample
使用提供的采样策略和参数从源数据集生成新示例。
注释
此方法已弃用,不再受支持。
通过调用 Dataset.Tabular 上的静态方法并TabularDataset使用该方法创建一个take_sample。 有关详细信息,请参阅 https://aka.ms/dataset-deprecation。
sample(sample_strategy, arguments)
参数
名称 | 说明 |
---|---|
sample_strategy
必需
|
要使用的示例策略。 接受的值是“top_n”、“simple_random”或“分层”。 |
arguments
必需
|
一个字典,其中包含上面所示列表中的“可选参数”中的键,以及来自 tye“Type”列的值。 只能使用来自相应采样方法的参数。 例如,对于“simple_random”示例类型,只能使用“probability”和“seed”键指定字典。 |
返回
类型 | 说明 |
---|---|
数据集对象作为原始数据集的示例。 |
注解
通过执行此数据集定义的转换管道,然后将采样策略和参数应用到输出数据来生成示例。 每个采样方法都支持以下可选参数:
top_n
可选自变量
- n,类型整数。 选择前 N 行作为示例。
simple_random
可选自变量
probability,类型 float。 简单随机采样,其中每一行的概率相等。 概率应为介于 0 和 1 之间的数字。
种子,类型 float。 随机数生成器使用。 用于可重复性。
分层
可选自变量
columns, type list[str]。 数据中的层列列表。
种子,类型 float。 随机数生成器使用。 用于可重复性。
fractions, type dict[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 数据帧。
注释
此方法已弃用,不再受支持。
通过调用 Dataset.Tabular 上的静态方法并TabularDataset使用该方法创建一个to_pandas_dataframe。 有关详细信息,请参阅 https://aka.ms/dataset-deprecation。
to_pandas_dataframe()
返回
类型 | 说明 |
---|---|
Pandas 数据帧。 |
注解
返回内存中完全具体化的 Pandas 数据帧。
to_spark_dataframe
创建一个 Spark 数据帧,该帧可以执行此数据集定义定义的转换管道。
注释
此方法已弃用,不再受支持。
通过调用 Dataset.Tabular 上的静态方法并TabularDataset使用该方法创建一个to_spark_dataframe。 有关详细信息,请参阅 https://aka.ms/dataset-deprecation。
to_spark_dataframe()
返回
类型 | 说明 |
---|---|
Spark 数据帧。 |
注解
返回的 Spark 数据帧只是执行计划,实际上不包含任何数据,因为 Spark 数据帧的计算迟缓。
update
更新工作区中的数据集可变属性,并从工作区中返回更新后的数据集。
update(name=None, description=None, tags=None, visible=None)
参数
名称 | 说明 |
---|---|
name
必需
|
工作区中数据集的名称。 |
description
必需
|
数据的说明。 |
tags
必需
|
要与数据集关联的标记。 |
visible
必需
|
指示数据集是否在 UI 中可见。 |
返回
类型 | 说明 |
---|---|
工作区中更新的 Dataset 对象。 |
update_definition
更新数据集定义。
update_definition(definition, definition_update_message)
参数
名称 | 说明 |
---|---|
definition
必需
|
此数据集的新定义。 |
definition_update_message
必需
|
定义更新消息。 |
返回
类型 | 说明 |
---|---|
工作区中更新的 Dataset 对象。 |
注解
若要使用更新的数据集,请使用此方法返回的对象。
属性
definition
返回当前数据集定义。
返回
类型 | 说明 |
---|---|
数据集定义。 |
注解
数据集定义是一系列步骤,用于指定如何读取和转换数据。
在 AzureML 工作区中注册的数据集可以有多个定义,每个定义都是通过调用 update_definition创建的。 每个定义都具有唯一标识符。 使用多个定义可以更改现有数据集,而无需中断依赖于旧定义的模型和管道。
对于未注册的数据集,只有一个定义存在。
definition_version
返回数据集的当前定义版本。
返回
类型 | 说明 |
---|---|
数据集定义版本。 |
注解
数据集定义是一系列步骤,用于指定如何读取和转换数据。
在 AzureML 工作区中注册的数据集可以有多个定义,每个定义都是通过调用 update_definition创建的。 每个定义都具有唯一标识符。 当前定义是创建的最新定义,其 ID 由此返回。
对于未注册的数据集,只有一个定义存在。
description
id
is_visible
控制 Azure ML 工作区 UI 中已注册数据集的可见性。
返回
类型 | 说明 |
---|---|
数据集可见性。 |
注解
返回的值:
True:数据集在工作区 UI 中可见。 违约。
False:数据集隐藏在工作区 UI 中。
对未注册的数据集没有影响。
name
state
返回数据集的状态。
返回
类型 | 说明 |
---|---|
数据集状态。 |
注解
状态的含义和效果如下所示:
活动。 活动定义完全与其听起来类似,所有作都可以在活动定义上执行。
已弃用。 可以使用已弃用的定义,但每次访问基础数据时都会在日志中记录警告。
存档。 存档定义不能用于执行任何作。 若要对存档定义执行作,必须重新激活它。
workspace
Tabular
用于创建的工厂 FileDataset