Python 如何将图像数据从存储桶加载到AWS sagemaker笔记本?

Python 如何将图像数据从存储桶加载到AWS sagemaker笔记本?,python,machine-learning,amazon-s3,deep-learning,amazon-sagemaker,Python,Machine Learning,Amazon S3,Deep Learning,Amazon Sagemaker,这些图像以文件夹的形式呈现-在我的s3存储桶中进行训练和测试。我想在我的sagemaker笔记本中使用它们。例如,与在本地服务器上一样,我使用test_dir=“C:\Users\catvdog\dataset\test”。dir的示例如下: 's3://sagemaker-eu-central-1-123456789/test/sagemaker/sklearncontainer/test' 一般来说,您可以为文件创建路径 data_file = 'filename.csv' datafol

这些图像以文件夹的形式呈现-在我的s3存储桶中进行训练和测试。我想在我的sagemaker笔记本中使用它们。例如,与在本地服务器上一样,我使用test_dir=“C:\Users\catvdog\dataset\test”。

dir的示例如下:

's3://sagemaker-eu-central-1-123456789/test/sagemaker/sklearncontainer/test'
一般来说,您可以为文件创建路径

data_file = 'filename.csv'
datafolder = 'xxx/yyy'
data_location = 's3://{}/{}/{}'.format(bucket, datafolder, data_file)

我想你要找的是
s3fs
模块。 例如:

import s3fs

fs = s3fs.S3FileSystem()

directory = 'bucket_name/data'
filenames = fs.ls(directory)
for filename in filenames:
    with fs.open(filename, 'rb') as f:
        # do something with file

有关详细信息,请参见train_dir='s3://sagemaker-us-east-2/catvdog/dataset/train',但获取文件未找到时出错。感谢您的反馈。“sagemaker-us-east-2”真的是您S3存储桶的名称吗?该bucket的名称中只有AWS区域。我的bucket有一个12位数字作为bucket名称的最后一部分。