我有包含2D坐标列表的巨大JSON对象,我需要将它们转换为numpy数组以进行处理。
但是使用"json.loads"后跟"np.array()"太慢了。
有没有一种方法可以加快从JSON创建numpy数组的速度?
但是使用"json.loads"后跟"np.array()"太慢了。
有没有一种方法可以加快从JSON创建numpy数组的速度?
import json
import numpy as np
json_input = '{"rings" : [[[-8081441.0, 5685214.0], [-8081446.0, 5685216.0], [-8081442.0, 5685219.0], [-8081440.0, 5685211.0], [-8081441.0, 5685214.0]]]}'
dict = json.loads(json_input)
numpy_2d_arrays = [np.array(ring) for ring in dict["rings"]]
我愿意接受任何解决方案!
json
解码错误:File "/usr/lib/python3.5,... json.decoder.JSONDecodeError: Expecting value: line 1 column 14 (char 13)
。 - hpaulj()
。 - hpauljeval
和ast.literal_eval
(更安全)。在这个小样本中,json.loads
明显更快。np.array
部分所需时间更少。 - hpaulj