【发布时间】:2020-05-29 13:38:20
【问题描述】:
请原谅我在这方面的无知/缺乏知识!
我希望将数据帧上传到 S3,但我需要传递 'ACL':'bucket-owner-full-control'。
import pandas as pd
import s3fs
fs = s3fs.S3FileSystem(anon=False, s3_additional_kwargs={'ACL': 'bucket-owner-full-control'})
df = pd.DataFrame()
df['test'] = [1,2,3]
df.head()
df.to_parquet('s3://path/to/file/df.parquet', compression='gzip')
我已经设法解决了这个问题,然后将其加载到 Pyarrow 表中,加载如下:
import pyarrow.parquet as pq
table = pa.Table.from_pandas(df)
pq.write_to_dataset(table=table,
root_path='s3://path/to/file/',
filesystem=fs)
但这感觉很hacky,我觉得在第一个示例中必须有一种方法可以通过ACL。
【问题讨论】:
标签: python pandas dataframe amazon-s3