如何用Pandas DataFrame更新Azure ML Dataset并切换至指定版本
Azure ML Dataset 相关问题解答
一、能否用Pandas DataFrame更新数据集并创建新版本?
可以实现。具体操作步骤如下:
- 先将更新后的Pandas DataFrame导出为CSV文件,覆盖Blob存储中对应数据集的源文件(也可写入新路径,后续创建版本时指定该路径)
- 通过Azure ML SDK创建新版本数据集:
- 连接到目标Azure ML工作区
- 从Blob存储路径加载文件,生成数据集对象
- 注册数据集时设置
create_new_version=True,即可自动生成新版本
示例代码:
from azureml.core import Workspace, Dataset import pandas as pd # 连接到工作区 ws = Workspace.from_config() # 处理DataFrame并保存到指定Blob路径 updated_df = pd.DataFrame(...) # 你的更新后数据内容 updated_df.to_csv("your-blob-container-path/updated_data.csv", index=False) # 创建数据集并注册新版本 datastore = ws.get_default_datastore() dataset = Dataset.File.from_files(path=(datastore, "your-blob-container-path/updated_data.csv")) dataset.register(ws, name="your-dataset-name", create_new_version=True)
如果是表格型数据集,可替换为Dataset.Tabular.from_csv_files方法创建,注册时同样开启版本创建参数即可。
二、将默认最新版本切换为版本1
有两种可行方式:
方式1:Azure ML工作室界面操作
- 登录Azure ML工作室,进入对应工作区
- 左侧导航栏选择「数据」→「数据集」,找到目标数据集
- 进入数据集详情页,切换到「版本」标签
- 找到版本1,点击右侧「...」菜单,选择「设为默认版本」
方式2:Azure ML SDK代码操作
from azureml.core import Workspace, Dataset ws = Workspace.from_config() # 获取目标数据集对象 dataset = Dataset.get_by_name(ws, name="your-dataset-name") # 将版本1设为默认版本 dataset.update_default_version(version=1)
设置完成后,后续调用Dataset.get_by_name(ws, name="your-dataset-name")时,默认返回的就是版本1,无需额外指定版本参数。
内容的提问来源于stack exchange,提问作者Imperial_J
相关产品推荐
相关产品推荐

