京公网安备 11010802034615号
经营许可证编号:京B2-20210330
在数据分析、爬虫采集、接口开发、数据归档等场景中,JSON与CSV是两种使用率最高的数据存储格式。JSON为键值对结构化格式,适配程序读取、嵌套数据存储,灵活性强但可读性差、不便于表格统计;CSV为纯文本表格格式,结构规整、兼容Excel、易于可视化分析与数据清洗。日常工作中,大量原始数据以JSON文件形式存储,需要转换为CSV格式用于后续数据分析、报表制作与数据复盘。Python凭借丰富的标准库与第三方工具,提供了轻量化、高效、可自动化的JSON转CSV方案。本文将对比两种文件格式差异,讲解两种主流转换方法、完整实操流程、适用场景与常见报错解决方案。
JSON(JavaScript Object Notation)是轻量级数据交换格式,支持单层、多层嵌套结构,可存储对象、数组、字符串、数值等多类型数据,兼容性强,是程序交互、接口返回、爬虫数据的主流存储格式。但其非规整表格结构,无法直接用于Excel查看、数据筛选、分组统计。
CSV(逗号分隔值)是标准结构化表格格式,以逗号分隔字段、以行为单位存储数据,自带表头与行列结构,完全适配Excel、Pandas、各类数据分析工具,是数据清洗、统计分析、可视化的通用格式。缺点是不支持多层嵌套复杂数据,仅适合扁平化结构化数据存储。
JSON转CSV是数据预处理的高频操作,核心价值在于数据结构化落地。将程序生成的非标准JSON数据,转化为标准表格数据,实现数据可视化查看、批量清洗、统计建模、报表输出,打通原始数据采集到数据分析的完整链路。
Python实现JSON转CSV分为两种核心方案,适配不同数据场景:第一种是Python标准库方案,依托内置json、csv库,无需安装第三方依赖,轻量化、零成本,适合单层简单JSON数据;第二种是Pandas库方案,代码简洁、功能强大,支持嵌套JSON自动展开、批量转换、大数据处理,是数据分析场景的首选方案。
该方案使用Python内置的json和csv标准库,无需额外安装插件,适配结构简单、无嵌套、数组格式的标准JSON文件,适合轻量化快速转换场景。
import json
import csv
# 1. 读取本地JSON文件
with open("data.json", "r", encoding="utf-8") as f:
data = json.load(f)
# 2. 获取表头(字典键名)
headers = data[0].keys() if data else []
# 3. 写入CSV文件
with open("output1.csv", "w", newline="", encoding="utf-8-sig") as f:
writer = csv.DictWriter(f, fieldnames=headers)
writer.writeheader() # 写入表头
writer.writerows(data) # 批量写入多行数据
print("标准库转换完成,文件已生成!")
首先通过json.load()读取本地JSON文件,将JSON数组转换为Python字典列表;其次提取字典键名作为CSV表头;最后通过csv.DictWriter创建写入对象,批量写入表头与行数据,完成格式转换。代码轻量化、运行速度快,无第三方依赖,适合简单扁平化JSON数据。
适用于单层、无嵌套、标准数组格式JSON;无法自动解析多层嵌套JSON,嵌套数据会直接写入字段,导致CSV格式错乱,不适合复杂数据场景。
Pandas是数据分析专用库,提供了read_json()与json_normalize()方法,不仅可以快速转换单层JSON,还能自动扁平化嵌套JSON数据,代码极简、容错性高、适配绝大多数业务场景,是工业级首选方案。
首次使用需安装依赖:pip install pandas
import pandas as pd
# 读取JSON并直接转为CSV
df = pd.read_json("data.json")
df.to_csv("output2.csv", index=False, encoding="utf-8-sig")
print("Pandas简单转换完成!")
针对多层嵌套的复杂JSON,使用json_normalize()自动展开嵌套字段,将复杂结构扁平化,完美适配接口数据、爬虫复杂JSON场景。
import pandas as pd
import json
# 读取嵌套JSON数据
with open("nested_data.json", "r", encoding="utf-8") as f:
data = json.load(f)
# 自动扁平化嵌套结构
df = pd.json_normalize(data)
# 导出为CSV,取消索引、保留中文编码
df.to_csv("nested_output.csv", index=False, encoding="utf-8-sig")
print("嵌套JSON转换完成!")
index=False:不导出行索引,保证CSV文件整洁;encoding="utf-8-sig":解决中文乱码问题;json_normalize():Pandas专属嵌套数据扁平化函数,是区别于标准库的核心优势。
优势:零依赖、轻量化、启动快、无环境配置成本;劣势:不支持嵌套数据、功能单一、容错性弱;适用场景:简单单层JSON、临时快速转换、轻量化脚本部署。
优势:支持嵌套数据自动展开、代码简洁、容错性强、支持大数据量、可搭配数据清洗操作;劣势:需安装第三方依赖;适用场景:数据分析预处理、复杂JSON转换、批量自动化处理、爬虫与接口数据归档。
默认编码导出会出现中文乱码,统一使用encoding="utf-8-sig"编码格式,可彻底解决中文兼容问题。
标准库无法解析嵌套数据,复杂JSON必须使用pd.json_normalize()扁平化处理,避免数据挤压、字段错乱。
原始JSON存在语法错误、多余逗号、乱码时会读取失败,需提前校验JSON格式,清洗无效字符后再转换。
Pandas默认导出行索引,添加index=False参数,关闭索引导出,保证CSV为纯净表格结构。
利用Python实现JSON转CSV是数据分析入门的核心实操技能,能够高效完成非结构化数据到结构化表格数据的转换。Python提供的标准库零依赖方案适合简单单层数据快速转换,而Pandas方案凭借嵌套解析、自动扁平化、高容错、易扩展的优势,成为复杂业务场景的通用最优解。
在实际工作中,可根据JSON数据结构灵活选型:简单数据用标准库轻量化转换,复杂嵌套、批量数据统一使用Pandas规范化处理。熟练掌握两种转换方法,能够快速完成原始数据格式化预处理,为后续的数据清洗、统计分析、可视化建模、报表输出提供标准化的数据支撑。

数据分析咨询请扫描二维码
若不方便扫码,搜微信号:CDAshujufenxi
在零售、商超、餐饮、线下门店等实体商业运营中,客流与销售额是衡量门店经营状态的两大核心指标。销售额是门店经营的最终结果, ...
2026-09-10在数据可视化体系中,柱形图是最基础、应用最广泛的图表类型,其中**累计柱形图(堆积柱状图)**是兼顾整体总量与内部结构的核心 ...
2026-09-10 许多数据分析师精通Excel函数和SQL查询,但当面对一张上万行的销售明细表,要快速回答“哪个地区销量最高”“哪款产品增长最 ...
2026-09-10在Python Pandas数据分析中,DataFrame是承载结构化数据的核心载体,数据清洗、数据修正、条件赋值、字段更新等实操场景,都离不 ...
2026-09-09 很多数据分析师掌握了Excel函数、会写SQL查询,但当被问到“数据从哪里来”“数据加工有哪些步骤”“如何使用分析工具连接数 ...
2026-09-09卡方检验(Chi-Square Test)是统计学中针对分类数据的经典显著性检验方法,核心用于判断两个离散分类变量是否相互独立、数据实 ...
2026-09-09CDA数据分析师 出品 作者:李诗怡 1. 销售漏斗阶段判断 题目:销售漏斗模型中,通过广告、社交媒体等方式触达品牌信息(如浏览品 ...
2026-09-07在Python数据分析中,Pandas库的DataFrame是最核心、最常用的结构化数据表对象,类似于Excel的二维表格,具备规整的行列结构、字 ...
2026-09-07在数据分析、经营复盘、业绩预测与经济统计工作中,平均增速(平均增长率)是衡量数据长期变化趋势、业务发展快慢的核心指标。不 ...
2026-09-07 很多数据分析师精通Excel单元格操作,但当被问到“表结构数据的基本处理单位是什么”“字段和记录的本质区别”“为什么表结 ...
2026-09-07随着大数据技术的快速发展,商业竞争逐步从传统的经验式经营转变为数据驱动的精细化运营。海量的用户行为数据、交易数据、运营数 ...
2026-09-04CDA数据分析师 出品 作者:李诗怡 1. 波士顿矩阵(BCG Matrix) 定义: BCG于1970年提出的业务组合分析工具,以"市场增长率"(纵 ...
2026-09-04 数据分析师八成以上的时间在和数据表格打交道,但许多人拿到Excel后习惯性地先算、先分析,结果回头发现漏了一列关键数据, ...
2026-09-04数据透视表是Excel与Power BI中最核心的数据分析工具,具备快速汇总、维度拆分、动态筛选的能力,可高效完成数据归类与统计展示 ...
2026-09-03在Power BI数据分析可视化场景中,堆积柱状图+折线图是最常用的复合图表组合。堆积柱状图适合展示各细分维度当期数值、结构占比 ...
2026-09-03 很多数据分析师每天与Excel打交道,但当被问到“表格结构数据的基本处理单位是什么”“数据类型误判会引发哪些分析错误”“ ...
2026-09-03CDA数据分析师 出品 作者:李诗怡 一、8个核心数据清洗函数 1. TRIM:一键清除多余空格(最常用) 作用:仅保留文本中"单词/字 ...
2026-09-02数据分析的核心并非单纯操作工具、整理报表或绘制图表,而是依靠科学的思维逻辑挖掘数据价值、解释业务现象、指导经营决策。在完 ...
2026-09-02在社会经济、产业研究、区域治理与大数据实证分析中,面板数据是最具研究价值的数据类型。面板数据同时包含截面维度与时间维度信 ...
2026-09-02 很多数据分析师能熟练计算均值、标准差,但当被问到“如何用一张图让业务方3秒内看懂核心结论”“面对不同数据类型该怎么选 ...
2026-09-02