我有一个400万行的DataFrame,并尝试将一列值从字符串转换为JSON,并得到内存问题.我如何改进我的代码?<



df(约400万行):

| ID       | Date      | Metric  | json_value                             
| -------- | --------- | ------- |---------------------------------------------------------------------------------------------
| 1        | 2020-01-01|    1    |'{"Id":1, "experiment":[{"Name":"a1", "value1":1}, {},...{"Name":"a200", "value200":200}]}'  |

我做:

df['json_value'] = [json.loads(x) for x in df['json_value']]

并得到错误"内核似乎已经死亡。它会自动重新启动。我可以把问题改成df的大小吗?

(如果有帮助,我想按对分组:日期和实验中的每个值一致,并计算每组的平均度量)

我相信你可以声明一个函数

def load_json(x):
return json.loads()

,然后做

df['json_value'] = df['json_value'].apply(load_json)

然而,一切都取决于你正在加载的json的大小。

最新更新