Python高效处理CSV、Excel和JSON数据的实战指南!
Python高效处理CSV、Excel和JSON数据的实战指南!
前言
在现代数据分析中,Python 无疑是一个强大的工具,特别是在处理各种格式的数据时,如 CSV、Excel 和 JSON 等。数据的存储格式不同,我们需要灵活的工具来进行读取、清洗、转换和分析。今天,我们将深入探讨如何使用 Python 高效地处理这三种最常见的数据格式。
1. 处理 CSV 数据
CSV(逗号分隔值)文件是最常见的数据存储格式之一。Python 中的pandas库提供了非常方便的工具来读取、写入和处理 CSV 文件。下面,我们就从如何读取 CSV 数据开始,逐步讲解常见操作。
1.1 读取 CSV 文件
使用pandas中的read_csv()方法,我们可以非常简单地加载 CSV 数据:
|
1
2
3
4
5
6
7
|
import pandas as pd# 读取 CSV 文件df = pd.read_csv('data.csv')# 查看数据的前五行print(df.head()) |
1.2 写入 CSV 文件
如果你想将处理后的数据保存回 CSV 文件,可以使用to_csv()方法:
|
1
2
|
# 将 DataFrame 保存为 CSV 文件df.to_csv('output.csv', index=False) |
index=False表示不保存行索引,如果不加此参数,行索引将被包含在 CSV 文件中。
1.3 处理 CSV 中的缺失值
CSV 文件中可能会有缺失值,pandas提供了处理缺失值的多种方法,比如填充缺失值或删除包含缺失值的行。
|
1
2
3
4
5
|
# 删除含有缺失值的行df.dropna(inplace=True)# 用特定值填充缺失值df.fillna(value={'column_name': 0}, inplace=True) |
1.4 筛选与排序数据
|
1
2
3
4
5
|
# 筛选某列大于某个值的行filtered_df = df[df['age'] > 30]# 根据某一列排序数据sorted_df = df.sort_values(by='age', ascending=False) |
2. 处理 Excel 数据
Excel 文件通常包含多个工作表,pandas通过read_excel()提供了读取 Excel 文件的功能。与 CSV 文件不同,Excel 文件可以包含多个工作表,pandas允许我们选择读取某个特定的工作表,甚至同时读取多个工作表。
2.1 读取 Excel 文件
|
1
2
3
4
5
6
7
8
|
# 读取 Excel 文件df = pd.read_excel('data.xlsx', sheet_name='Sheet1')# 如果不指定 sheet_name,则默认读取第一个工作表df = pd.read_excel('data.xlsx')# 查看数据的前五行print(df.head()) |
2.2 读取多个工作表
|
1
2
3
4
5
6
7
8
|
# 读取多个工作表df_dict = pd.read_excel('data.xlsx', sheet_name=None)# 获取所有工作表的名称print(df_dict.keys())# 访问某一个工作表sheet1_df = df_dict['Sheet1'] |
2.3 写入 Excel 文件
|
1
2
|
# 将 DataFrame 写入 Excel 文件df.to_excel('output.xlsx', index=False) |
2.4 处理 Excel 中的缺失值
|
1
2
3
4
5
|
# 删除含有缺失值的行df.dropna(inplace=True)# 用均值填充缺失值df.fillna(df.mean(), inplace=True) |
3. 处理 JSON 数据
JSON 格式是最常用于 Web 应用程序中的数据交换格式。在 Python 中,处理 JSON 格式的数据通常依赖json模块和pandas库,后者提供了更强大的功能来处理复杂的 JSON 数据结构。
3.1 读取 JSON 文件
使用pandas中的read_json()方法,我们可以读取 JSON 数据:
|
1
2
3
4
5
|
# 读取 JSON 文件df = pd.read_json('data.json')# 查看数据的前五行print(df.head()) |
3.2 写入 JSON 文件
将数据保存为 JSON 格式:
|
1
2
|
# 将 DataFrame 写入 JSON 文件df.to_json('output.json', orient='records', lines=True) |
orient='records'参数表示将每行数据保存为一个 JSON 对象。lines=True参数会将每条记录写入 JSON 格式的一行。
3.3 处理 JSON 格式的嵌套数据
有时候 JSON 数据可能包含嵌套的字典或列表结构。我们可以使用json_normalize()来将嵌套的数据平展为一个 DataFrame:
|
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
|
import jsonfrom pandas import json_normalize# 假设有以下嵌套的 JSON 数据data = {"id": 1,"name": "Alice","address": {"city": "New York","zipcode": "10001"}}# 使用 json_normalize 将嵌套的 JSON 转换为 DataFramedf = json_normalize(data)print(df) |
3.4 JSON 中的缺失值处理
如果 JSON 数据中有缺失值,可以使用和 CSV、Excel 数据相同的方法来处理它们。
|
1
2
3
4
5
|
# 删除含有缺失值的行df.dropna(inplace=True)# 用默认值填充缺失值df.fillna({'column_name': 'default_value'}, inplace=True) |
4. 总结
今天,我们介绍了如何使用 Python 中的pandas和json库来处理三种常见的数据格式:CSV、Excel 和 JSON。掌握这些技巧,不仅能帮助你更高效地进行数据清理和预处理,还能在实际的工作中减少重复性劳动,提高工作效率。
重点回顾:
- CSV:通过
read_csv()读取,to_csv()写入,处理缺失值和筛选数据。 - Excel:通过
read_excel()读取,to_excel()写入,支持读取多个工作表。 - JSON:通过
read_json()读取,to_json()写入,处理嵌套数据和缺失值。
希望通过这篇文章,大家能熟练掌握这三种数据格式的处理方法,快速应对日常的数据分析工作。
到此这篇关于Python高效处理CSV、Excel和JSON数据的实战指南的文章就介绍到这了。
学习资料见知识星球。
以上就是今天要分享的技巧,你学会了吗?若有什么问题,欢迎在下方留言。
快来试试吧,小琥 my21ke007。获取 1000个免费 Excel模板福利!
更多技巧, www.excelbook.cn
欢迎 加入 零售创新 知识星球,知识星球主要以数据分析、报告分享、数据工具讨论为主;
1、价值上万元的专业的PPT报告模板。
2、专业案例分析和解读笔记。
3、实用的Excel、Word、PPT技巧。
4、VIP讨论群,共享资源。
5、优惠的会员商品。
6、一次付费只需129元,即可下载本站文章涉及的文件和软件。

