我想知道是否有一种以内存有效的方式将多记录JSON文件(每行是JSON dict)读入pandas数据帧.下面是一个带有工作解决方案的2行示例,我需要它可能用于非常大量的记录.示例用法是处理来自Hadoop Pig JSonStorage函数的输出.
import json
import pandas as pd
test='''{"a":1,"b":2}
{"a":3,"b":4}'''
#df=pd.read_json(test,orient='records') doesn't work, expects []
l=[ json.loads(l) for l in test.splitlines()]
df=pd.DataFrame(l)
Run Code Online (Sandbox Code Playgroud) 什么是更快:
(A)'Unpickling'(正在加载)一个酸洗字典对象,使用 pickle.load()
要么
(B)使用将JSON文件加载到字典 simplejson.load()
假设:在案例A中已存在pickle对象文件,并且在案例B中已存在JSON文件.