如何加载存储在S3中的numpy字节数组而不将其写入磁盘?

2024-03-28 20:18:01 发布

您现在位置:Python中文网/ 问答频道 /正文

我在S3中有一个numpy数组,我想将它加载到python脚本中。使用boto3以以下方式上载阵列:

s3.put_object(
     Body=np.array(array).tobytes(),
     Bucket='bucketname',
     Key='filename'
)

我知道它是一个形状为(1356)的数组,并且dtype=float。你知道吗

如果不手动下载文件然后将其加载到numpy中,如何将这个项目从S3中获取到python脚本中?你知道吗

即使我手动下载该文件,我如何将其加载到numpy中?你知道吗


Tags: 文件numpy脚本objects3putnp方式
1条回答
网友
1楼 · 发布于 2024-03-28 20:18:01

我最终让它像这样工作:

obj = s3.Bucket('bucketname').Object('key')
obj = obj.get()['Body']

f = np.frombuffer(obj.read())

其中s3是boto3.resource('s3')对象

相关问题 更多 >