这里是“Python读写Excel数据–Pandas详解”的完整实例教程。
1. 准备工作
在开始之前,请先确保你已经安装好了以下必要的Python库:
- pandas
- xlrd
- openpyxl
其中,pandas是必须的,而xlrd和openpyxl分别用于读取xls和xlsx格式的Excel文件,你需要根据自己实际的需求选择安装。
2. 读取Excel数据
我们这里以读取xlsx格式的Excel文件为例:
import pandas as pd
# 读取Excel文件
df = pd.read_excel('data.xlsx')
# 打印数据
print(df.head())
这里的read_excel
函数用于读取Excel文件,head
函数可以打印前几行数据。
假设读取到的Excel文件长这样:
姓名 | 电话 | 邮箱 |
---|---|---|
张三 | 12345678901 | 123@abc |
李四 | 23456789012 | 234@abc |
王五 | 34567890123 | 345@abc |
那么可以看到我们得到的数据长这样:
姓名 | 电话 | 邮箱 | |
---|---|---|---|
0 | 张三 | 12345678901 | 123@abc |
1 | 李四 | 23456789012 | 234@abc |
2 | 王五 | 34567890123 | 345@abc |
这里的行索引是自动生成的,可以通过以下代码将行索引修改为从1开始:
# 修改行索引
df.index = df.index + 1
3. 写入Excel数据
读取Excel数据是一回事,写入Excel数据则是另一回事。我们可以将处理后的数据写回到Excel文件中:
# 修改数据
df['电话'] = df['电话'].apply(lambda x: str(x)[:3] + '-' + str(x)[3:7] + '-' + str(x)[7:])
# 将数据写入到Excel文件
df.to_excel('processed_data.xlsx', index=False)
这里的apply
函数用于对数据进行处理,我们将电话号码进行了格式化,将12345678901
格式化为了123-4567-8901
的形式。to_excel
函数用于将数据写入到Excel文件中,需要指定写入的文件名以及是否将行索引写入。
另外一个示例:如果要往一个已经存在的Excel文件中写入数据,可以使用ExcelWriter
类:
# 读取Excel文件
df = pd.read_excel('data.xlsx')
# 修改数据
df['电话'] = df['电话'].apply(lambda x: str(x)[:3] + '-' + str(x)[3:7] + '-' + str(x)[7:])
# 将数据写入到Excel文件
writer = pd.ExcelWriter('data.xlsx')
df.to_excel(writer, index=False, sheet_name='sheet1')
writer.save()
这里的ExcelWriter
类可以指定写入的Excel文件名以及写入的工作表名称,to_excel
函数用于将数据写入到工作表中,需要指定工作表名称及是否将行索引写入,最后通过save
方法将数据保存到Excel文件中。
总结
以上就是Python读写Excel数据的完整实例教程,包括读取和写入两个部分。本教程介绍了如何使用pandas库来读取和写入Excel文件,以及一些常用的处理数据的方法。当然,在实际应用中,你会遇到更加复杂的数据处理需求,但是只要掌握了基础的读写方法和数据处理技巧,相信你可以轻松应对各种情况。