APIをクエリしてデータフレームを作成するAWSLambda関数があります。このファイルをS3バケットに書き込みたいので、次を使用しています。
import pandas as pd
import s3fs
df.to_csv('s3.console.aws.amazon.com/s3/buckets/info/test.csv', index=False)
エラーが発生します:
そのようなファイルまたはディレクトリはありません: 's3.console.aws.amazon.com/s3/buckets/info/test.csv'
しかし、私はそこからファイルを読んでいるので、そのディレクトリは存在します。ここでの問題は何ですか?
私はこのように以前のファイルを読みました:
s3_client = boto3.client('s3')
s3_client.download_file('info', 'secrets.json', '/tmp/secrets.json')
データフレーム全体をS3バケットにアップロードするにはどうすればよいですか?
boto3パッケージは、S3へのデータの保存にも使用できます。
from io import StringIO # python3 (or BytesIO for python2)
import boto3
bucket = 'info' # already created on S3
csv_buffer = StringIO()
df.to_csv(csv_buffer)
s3_resource = boto3.resource('s3')
s3_resource.Object(bucket, 'df.csv').put(Body=csv_buffer.getvalue())
この記事はインターネットから収集されたものであり、転載の際にはソースを示してください。
侵害の場合は、連絡してください[email protected]
コメントを追加