如何在 Watson Studio 中使用 Insert to Code to pandas 从 StreamingBody 对象加载数据?

How do I load data from a StreamingBody object using Insert to Code to pandas in Watson Studio?

Insert to Code 功能使您能够在 Watson Studio 中使用 Jupyter 笔记本时访问存储在 Cloud Object Storage 中的数据。一些文件类型(例如 txt 文件)将只有 StreamingBody 和 Credentials 作为插入代码选项:

如何使用 StreamingBody 对象访问我的数据?

这些代码片段并不总能让您以完整的方式访问您的数据。对于 Insert StreamingBody object 选项,您可以使用 io.BytesIO 将数据加载到 pandas 数据帧中,例如:

import io
import pandas as pd

df = pd.read_table(io.BytesIO(streaming_body_1.read()))

其中 streaming_body_1 是 boto3 客户端 get_object()['Body']

如果其他人在尝试上传 csv 时偶然发现了这个答案,请检查您是否没有忘记将 .xls 或 .xlsx 转换为 .csv。

CSV 格式后,它会自动为您创建数据框。