我试图找到用于获取数据帧并将其作为csv上传到S3的解决方案。我尝试了此资源,但可能会感到困惑。 upload data to S3 with sagemaker
import boto3
s3 =boto.resource('s3')
bucket = 'work'
key = 'test.csv'
doc = df.to_csv('test.csv')
s3.Bucket(bucket).put_object(Key= key, Body = doc)
我收到以下错误:
ParamValidationError: Parameter validation failed:
Invalid type for parameter Body, value: None, type: <type 'NoneType'>, valid
types: <type 'str'>, <type 'bytearray'>, file-like object
我对s3并使用Sagemaker非常陌生。我觉得自己在做的事完全是错误的。
答案 0 :(得分:0)
尝试.upload_file(local_file)。
import boto3
s3 = boto3.Session().resource('s3')
bucket = 'your-bucket'
key = 'path-in-bucket/test.csv' # filepath in s3
doc = df.to_csv('test.csv') # your local file
s3.Bucket(bucket).Object(key).upload_file(doc)