如何将一个文件从我的会话上传至 azure 数据存储中?

问题描述 投票:0回答:1

我从我的 azure datastorage 下载了一个数据文件,对其进行了预处理,又想将处理后的文件作为最终的 csv 上传到数据存储中,我该怎么做呢?我尝试了下面的appraoch,但它给我一个目录错误。

datastore = ws.get_default_datastore()
datastore_paths_train = [(datastore, 'X.csv')]
traindata = Dataset.Tabular.from_delimited_files(path=datastore_paths_train)
train = traindata.to_pandas_dataframe()


#preprocessing the data 
X, y = preprocess_data(train)


#splitting the data
X_train, X_test, y_train, y_test = train_test_split(X, y, test_size=0.3, random_state=0)

#uploading data to datastore
print('Uploading data to datastore')
outputs_folder = './Scaling_data'
os.makedirs(outputs_folder, exist_ok=True)
datastore.upload(X_train, outputs_folder)

我如何让我的 "X_train "成为一个目录, 我试着把它变成一个Path对象,但也没有用. 我可能在这里错了,如果有任何其他的方法上传csv到datastore,我会很高兴学习。

pandas azure azure-devops data-storage
1个回答
0
投票

下面的 datastore.upload 方法显示你需要指定上传的源文件目录。参见 此处 了解更多详情。

upload(src_dir, target_path=None, overwrite=False, show_progress=True)

所以你需要保存数据帧 X_train 到本地文件。见下面的例子。

outputs_folder = "./Scaling_data"

# create local directory if not exist
if not os.path.exists(outputs_folder):
    os.mkdir(outputs_folder)

local_path = './Scaling_data/prepared.csv'

# save dataframe X_train to local file './Scaling_data/prepared.csv'
X_train.to_csv(local_path)

# upload the local file from src_dir to the target_path in datastore
datastore.upload(src_dir=outputs_folder, target_path=outputs_folder)

你也可以查看 本例.

© www.soinside.com 2019 - 2024. All rights reserved.