Kun*_*hal 3 python json pandas
看来我可以同时使用pandas和/或json来读取json文件,即
import pandas as pd
pd_example = pd.read_json('some_json_file.json')
Run Code Online (Sandbox Code Playgroud)
或者,等效地,
import json
json_example = json.load(open('some_json_file.json'))
Run Code Online (Sandbox Code Playgroud)
所以我的问题是,有什么区别,我应该使用哪一个?是否建议一种方法优于另一种方法?在某些情况下,一种方法比另一种更好吗?谢谢。
当您在json文件中只有一个JSON结构时,请使用,read_json因为它会将JSON直接加载到DataFrame中。使用json.loads,您必须将其加载到python字典/列表中,然后再加载到DataFrame中-这是一个不必要的两步过程。
当然,这是基于结构可以直接解析为DataFrame的假设。对于非平凡的结构(通常为复杂的嵌套字典列表形式),您可能要使用它json_normalize。
另一方面,使用JSON lines文件,故事变得不同了。根据我的经验,我发现在大数据上加载JSON lines文件pd.read_json(..., lines=True)实际上稍微慢一些(一次在约50k条记录上进行测试),更糟糕的是,它无法处理有错误的行-整个读取操作都会失败。相反,您可以json.loads在try-except大括号内的文件的每一行上使用一些可靠的代码,而这些代码实际上最终会以更快的速度单击几下。去搞清楚。
使用适合情况的任何东西。
| 归档时间: |
|
| 查看次数: |
1049 次 |
| 最近记录: |