繁体   English   中英

加载大型JSON文件python 3.4时出现内存错误

[英]Memory Error while loading a large JSON file python 3.4

我正在尝试使用以下命令pandas.read_json(myfile)加载大型Json文件(大小:8.5 GB pandas.read_json(myfile)

引发内存错误

MemoryError                               Traceback (most recent call last)
<ipython-input-6-88d3fb70f2f4> in <module>()
----> 1 df1=pd.read_json("part1")

/root/anaconda3/lib/python3.4/site-packages/pandas/io/json.py in read_json(path_or_buf, orient, typ, dtype, convert_axes, convert_dates, keep_default_dates, numpy, precise_float, date_unit, encoding, lines)
    279         obj = FrameParser(json, orient, dtype, convert_axes, convert_dates,
    280                           keep_default_dates, numpy, precise_float,
--> 281                           date_unit).parse()
    282 
    283     if typ == 'series' or obj is None:

/root/anaconda3/lib/python3.4/site-packages/pandas/io/json.py in parse(self)
    347 
    348         else:
--> 349             self._parse_no_numpy()
    350 
    351         if self.obj is None:

/root/anaconda3/lib/python3.4/site-packages/pandas/io/json.py in _parse_no_numpy(self)
    564         if orient == "columns":
    565             self.obj = DataFrame(
--> 566                 loads(json, precise_float=self.precise_float), dtype=None)
    567         elif orient == "split":
    568             decoded = dict((str(k), v)

MemoryError: 

我有32 GB的物理RAM,我正在CentOs虚拟机上工作,其中有28 GB RAM。 有办法解决这个问题吗? 提前致谢

根据您的可用物理内存将json分解为小于ram的文件,然后加载每个文件并保存,然后再加载另一个json文件

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM