python - 如何将 JSON 的字节串读入 pandas
问题描述
我有一个 python 字节字符串,我想读入熊猫。文件类型是 NDJSON(换行符分隔的 json),pandas 将其读取为完全无效。
s = b'{"id": "01", "amount_usd": 16.44, "foo": 1462075200.0, "bar": 1462075200.0, "baz": "abc"}\n
{"id": "02", "amount_usd": 2.88, "foo": 1462075200.0, "bar": 1462075200.0, "sample": "def"}\n
...
我试过解码它并将其读入熊猫,如下所示:
s = s.decode("utf-8")
pd.read_json(s)
但这不起作用,因为 JSON 结构不是 pandas 所期望的。
我得到错误
ERROR - Trailing data
我怎样才能把这个结构读入熊猫?
解决方案
是的,这不是有效的 JSON。如果它们真的被换行符分隔,你可以这样做
s = '[' + ','.join(s.rstrip().split('\n')) + ']'
把它变成一个列表。
推荐阅读
- docker-compose - 在 Docker Compose 中运行 Redis Insights
- python - 子类 QWidget 不可见
- python - 有没有办法在框架中添加一个矩形/颜色条?
- javascript - 从 React 中的模态调度 Redux 操作
- php - Laravel 获取一个有空格的 Json 值
- wordpress - 如何在 WooCommerce 中获取可用的税率
- python - 使用 .at 会导致 ValueError 或 TypeError
- javascript - 在打字稿中覆盖子项的静态字段
- python - 在 python 中使用 scipy 进行曲线拟合以查找校正参数(不能将序列乘以非 int 类型的“numpy.float64”)
- python - python应用函数但如果不在索引中则忽略列