将数据帧以羽化格式保存到 S3

ama*_*hin 5 python amazon-s3 python-3.x feather

我有一个数据框,让我们说:

import pandas as pd
df = pd.DataFrame({'a': [1, 4], 'b': [1, 3]})
Run Code Online (Sandbox Code Playgroud)

我想将它作为羽毛文件保存到 s3,但我找不到一种可行的方法来做到这一点。

我试图用s3bps3fs,但他们不这样做的伎俩。

有什么建议吗?

ama*_*hin 5

对我有用的解决方案是

import boto3
import pandas as pd

from io import BytesIO
from pyarrow.feather import write_feather

df = pd.DataFrame({'a': [1, 4], 'b': [1, 3]})

s3_resource = boto3.resource('s3')
with BytesIO() as f:
    write_feather(df, f)
    s3_resource.Object('bucket-name', 'file_name').put(Body=f.getvalue())
Run Code Online (Sandbox Code Playgroud)