如何将嵌套JSON转换为列结构规范的CSV以适配Google Sheets?
问题:嵌套JSON转规范CSV表格
你的JSON文件中data字段是包含1001个字典元素的数组,每个字典对应一组键值对数据。之前使用的代码仅提取了data字段得到Series对象,每个元素是完整字典,导致导出的CSV在Google Sheets中显示为每个单元格包含整段字典内容,无法形成规范的表头-列结构。
解决方法
使用pandas的json_normalize()方法直接解析嵌套的JSON结构,自动将字典键转为表头、每个数组元素转为表格行。修改后的代码如下:
import pandas as pd import json # 读取并加载JSON文件内容 with open('Data.json', 'r', encoding='utf-8') as f: json_data = json.load(f) # 将data数组中的嵌套字典解析为规范DataFrame df = pd.json_normalize(json_data['data']) # 导出为CSV,禁用行索引 df.to_csv('file.csv', index=False)
关键说明
json.load()先将JSON文件加载为Python字典,确保能准确获取data数组pd.json_normalize()会遍历data内的每个字典,自动提取所有键作为列名,对应值填充至各行的对应列index=False避免导出时生成多余的行索引列,符合标准表格格式
导出后的CSV在Google Sheets中打开时,会自动识别表头,每行对应原JSON中的一个数组元素,列内容与原字典键一一对应。
内容的提问来源于stack exchange,提问作者Luis Contreras
相关产品推荐
相关产品推荐

