gpt4 book ai didi

azure-storage-blobs - 我们可以通过 python 将数据附加到存储在 Azure blob 存储中的现有 csv 文件吗?

转载 作者:行者123 更新时间:2023-12-04 07:58:42 25 4
gpt4 key购买 nike

我在 azure 设计师工作室部署了一个机器学习模型。我需要每天通过 python 代码用新数据重新训练它。我需要将现有的 csv 数据保留在 blob 存储中,并向现有的 csv 添加更多数据并重新训练它。如果我只用新数据重新训练模型,旧数据就会丢失,所以我需要通过将新数据附加到现有数据来重新训练模型。有没有办法通过python编码来做到这一点?
我还研究了附加 blob,但它们仅添加到 blob 的末尾。在文档中,他们提到我们无法更新或添加到现有的 blob。

最佳答案

我不确定为什么它必须是一个 csv 文件。有许多基于 Python 的库可用于处理跨多个 csv 的数据集。

  • Dask DataFrame API
  • pyspark
  • Azure Machine Learning Tabular Dataset

  • 在所有示例中,您都传递了 glob pattern ,这将匹配多个文件。此模式与 Azure ML 数据集配合使用非常自然,您可以将其用作输入。请参阅上面文档链接的摘录。
    from azureml.core import Workspace, Datastore, Dataset

    datastore_name = 'your datastore name'

    # get existing workspace
    workspace = Workspace.from_config()

    # retrieve an existing datastore in the workspace by name
    datastore = Datastore.get(workspace, datastore_name)

    # create a TabularDataset from 3 file paths in datastore
    datastore_paths = [(datastore, 'weather/2018/11.csv'),
    (datastore, 'weather/2018/12.csv'),
    (datastore, 'weather/2019/*.csv')] # here's the glob pattern

    weather_ds = Dataset.Tabular.from_delimited_files(path=datastore_paths)
    假设所有的 csvs 都可以放入内存,你可以很容易地把这些数据集变成 pandas数据帧。 with Azure ML Datasets,你打电话
    # get the input dataset by name
    dataset = Dataset.get_by_name(ws, name=dataset_name)
    # load the TabularDataset to pandas DataFrame
    df = dataset.to_pandas_dataframe()
    使用 Dask 数据框, this GitHub issue说你可以打电话
    df = my_dask_df.compute()
    就输出数据集而言,您可以通过将输出 CSV 作为数据帧读入、将数据附加到其中然后将其覆盖到同一位置来控制这一点。

    关于azure-storage-blobs - 我们可以通过 python 将数据附加到存储在 Azure blob 存储中的现有 csv 文件吗?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/66576663/

    25 4 0
    Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
    广告合作:1813099741@qq.com 6ren.com