Как я могу загрузить массив байтов, который хранится в S3, не записывая его на диск? - PullRequest
0 голосов
/ 02 июля 2019

У меня есть пустой массив в S3, который я хочу загрузить в свой скрипт на python. Массив был загружен следующим образом с boto3:

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

Я знаю, что это массив с формой (1, 356), имеющий dtype = float.

Как я могу получить этот элемент из S3 в свой скрипт на Python, не загружая файл вручную, а затем загружая его в numpy?

Даже если я скачаю файл вручную, как мне загрузить его в numpy?

1 Ответ

0 голосов
/ 04 июля 2019

В итоге все получилось так:

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

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

, где s3 - объект boto3.resource ('s3')

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...