【发布时间】:2019-07-20 09:06:10
【问题描述】:
Pandas 具有适用于单个数据帧的 DataFrame.to_json 和 pd.read_json 函数。但是,我一直在尝试找到一种方法来将包含许多数据框的列表导出和导入单个 json 文件。至此,我已经成功用这段代码导出列表了:
with open('my_file.json', 'w') as outfile:
outfile.writelines([json.dumps(df.to_dict()) for df in list_of_df])
这将创建一个 json 文件,其中所有数据帧都转换为 dicts。但是,当我尝试反向读取文件并提取我的数据框时,出现错误。这是代码:
with open('my_file.json', 'r') as outfile:
list_of_df = [pd.DataFrame.from_dict(json.loads(item)) for item in
outfile]
我得到的错误是: JSONDecodeError: 额外数据
我认为问题在于我必须以某种方式在读取 json 文件的代码中包含与“writelines”相反的内容,即“readlines”,但我不知道该怎么做。任何帮助将不胜感激!
【问题讨论】: