FileDatasetFactory 类

包含用于为 Azure 机器学习创建文件数据集的方法。

通过此类中定义的 from_files 方法创建 FileDataset

若要详细了解如何使用文件数据集,请参阅笔记本 https://aka.ms/filedataset-samplenotebook

继承
builtins.object
FileDatasetFactory

构造函数

FileDatasetFactory()

方法

from_files

创建 FileDataset 来表示文件流。

upload_directory

从源目录创建数据集。

from_files

创建 FileDataset 来表示文件流。

static from_files(path, validate=True, partition_format=None, is_file=False)

参数

path
Union[str, list[str]<xref:,azureml.data.datapath.DataPath>, list[DataPath]<xref:,>(Datastore, str), list[(Datastore, str)]]
必需

源文件的路径,可以是 HTTP URL 字符串、DataPath 对象或 Datastore 和相对路径的元组的单个值或列表。 请注意,路径列表不能同时包含 URL 和数据存储。

validate
bool
必需

指示是否验证能否从返回的数据集加载数据。 默认为 True。 验证要求可从当前计算访问数据源。

partition_format
str
必需

指定路径的分区格式。 默认为“无”。 将基于指定的格式将每个路径的分区信息提取到列中。 格式部分“{column_name}”创建字符串列,“{column_name:yyyy/MM/dd/HH/mm/ss}”创建日期时间列,其中“yyyy”、“MM”、“dd”、“HH”、“mm”和“ss”分别用于提取日期/时间类型的年、月、日、小时、分钟和秒。 格式应从文件路径结束之前的第一个分区键位置开始。 例如,给定路径“../Accounts/2019/01/01/data.jsonl”,其中分区是按部门名称和时间划分的;partition_format='/{Department}/{PartitionDate:yyyy/MM/dd}/data.jsonl' 创建值为“Accounts”的字符串列“Department”和值为“2019-01-01”的日期/时间列“PartitionDate”。

is_file
bool
必需

指示所有输入路径是否指向文件。 数据集引擎默认尝试检查输入路径是否指向文件。 当所有输入路径均为文件时,将此标志设置为 True,以加快数据集的创建速度。

返回

FileDataset 对象。

返回类型

注解

from_files 创建 FileDataset 类的对象,它定义了从提供的路径加载文件流的操作。

对于 Azure 机器学习可访问的数据,path 指定的文件必须位于 Datastore 中,或者可以使用公共 Web URL 访问。

现支持从 Blob、ADLS Gen1 和 ADLS Gen2 的 URL 创建数据集(这是预览功能)。如果用户的 AAD 令牌直接调用以下函数之一,则将在笔记本或本地 Python 程序中使用此令牌:FileDataset.mount FileDataset.download FileDataset.to_path TabularDataset.to_pandas_dataframe TabularDataset.to_dask_dataframe TabularDataset.to_spark_dataframe TabularDataset.to_parquet_files TabularDataset.to_csv_files。计算目标的标识将在 Experiment.submit 提交的作业中使用来进行数据访问身份验证。 了解详细信息:https://aka.ms/data-access


   from azureml.core import Dataset, Datastore

   # create file dataset from a single file in datastore
   datastore = Datastore.get(workspace, 'workspaceblobstore')
   file_dataset_1 = Dataset.File.from_files(path=(datastore,'image/dog.jpg'))

   # create file dataset from a single directory in datastore
   file_dataset_2 = Dataset.File.from_files(path=(datastore, 'image/'))

   # create file dataset from all jpeg files in the directory
   file_dataset_3 = Dataset.File.from_files(path=(datastore,'image/**/*.jpg'))

   # create filedataset from multiple paths
   data_paths = [(datastore, 'image/dog.jpg'), (datastore, 'image/cat.jpg')]
   file_dataset_4 = Dataset.File.from_files(path=data_paths)

   # create file dataset from url
   file_dataset_5 = Dataset.File.from_files(path='https://url/image/cat.jpg')

upload_directory

从源目录创建数据集。

static upload_directory(src_dir, target, pattern=None, overwrite=False, show_progress=True)

参数

src_dir
str
必需

要上传的本地目录。

target
Union[DataPath, <xref:azureml.core.datastore.Datastore,tuple>(Datastore, str)]
必需

必需,文件将上传到的数据存储路径。

pattern
str
必需

可选。如果提供,则将筛选与给定模式匹配的所有路径名,类似于 Python glob 包,支持“*”、“?”和用 [] 表示的字符范围。

show_progress
bool
必需

可选,指示是否在控制台中显示上传进度。 默认为 True。

返回

已注册的数据集。

返回类型