【问题标题】:Loading pandas data frame from pickle file in S3 bucket to AWS Lambda - problem with type将 Pandas 数据框从 S3 存储桶中的 pickle 文件加载到 AWS Lambda - 类型问题
【发布时间】:2022-11-17 09:25:38
【问题描述】:

我用 KNN 分类器创建了一个机器学习模型。然后,我制作了一个测试数据集的 pickle 文件,并使用 AWS SDK 将其上传到 AWS S3 存储桶。

出于测试目的,我下载了它并使用以下内容测试了类型:

with open("C:\\...path...\\test_features.pkl", 'rb') as f:
    test_data= pickle.load(f)
print(type(test_data))

结果是<class 'pandas.core.frame.DataFrame'>,没问题。

但是,在阅读 AWS Lambda 时,以下部分

s3 = boto3.client('s3')
test_features = s3.get_object(Bucket=bucket, Key= key)
print(type(test_features))

<class 'dict'>

如何在 AWS Lambda 中也获取 DataFrame 类型?

【问题讨论】:

    标签: python pandas amazon-web-services aws-lambda mlops


    【解决方案1】:

    您需要先阅读内容,然后使用 pickle 加载内容并创建数据框

    test_features = s3.get_object(Bucket=bucket, Key= key)
    body = test_features['Body'].read()
    test_data = pickle.loads(body)
    print(type(test_data))
    

    【讨论】:

    • 我收到错误消息:“errorMessage”:“名称‘response’未定义”
    • 代码中有错字更改对 test_features 的响应
    猜你喜欢
    • 2018-06-25
    • 1970-01-01
    • 2019-02-16
    • 1970-01-01
    • 1970-01-01
    • 2021-04-04
    • 2020-09-15
    • 2020-06-15
    • 2020-07-29
    相关资源
    最近更新 更多