Python 捕获df.to_json()异常
我试图确定执行pandas DataFrame.to_json方法时失败的原因。数据帧是有效的,但它非常大,大约有1000000条记录 这是我的代码,其中预测是我的数据帧: 尝试: predictions.to_jsonwrite_文件,orient='records',line=True 除EOFError作为eoferr外: 普列特费尔 sys.exit'\n无法写入文件%s!伊奥费罗。正在退出…'%write\u文件 除IOError作为ioerr外: 打印错误 sys.exit'\n无法写入文件%s!权限问题正在退出…'%write\u文件 例外情况除外,如e: 版画 sys.exit'\n无法写入文件%s!未知异常。正在退出…'%write\u文件 现在,我得到一个未知的异常。退出。。。正在引发异常。提前谢谢 不是一个解决方案,而是一个变通方法 我相信这是DataFrame.to_json的内存问题-如果试图将~5M记录x 1000列的DataFrame转换为json文件,机器将挂起,并退出引发一般异常 解决方法是使用DataFrame.to_dict,然后使用json.dump:Python 捕获df.to_json()异常,python,json,pandas,dataframe,exception,Python,Json,Pandas,Dataframe,Exception,我试图确定执行pandas DataFrame.to_json方法时失败的原因。数据帧是有效的,但它非常大,大约有1000000条记录 这是我的代码,其中预测是我的数据帧: 尝试: predictions.to_jsonwrite_文件,orient='records',line=True 除EOFError作为eoferr外: 普列特费尔 sys.exit'\n无法写入文件%s!伊奥费罗。正在退出…'%write\u文件 除IOError作为ioerr外: 打印错误 sys.exit'\n无法
到目前为止,这适用于任何大小的数据帧。与此同时,我将在Pandas repo上提交一个错误/问题。可以尝试遍历行并在每行调用_json吗?谢谢@mobone-我找到了一个解决方法并将其作为答案发布。
import json
write_file = "/path/to/output.json"
holder_dictionary = predictions.to_dict(orient='records')
with open(write_file, 'w') as outfile:
json.dump(holder_dictionary, outfile)