Jupyter AI

6 使用Pandas库操作Excel之写入Excel文件的内容

📅 发表日期: 2024年8月11日

分类: 📊Excel Python 自动化

👁️阅读: --

在上一篇文章中,我们详细探讨了如何使用Pandas库读取Excel文件。在这一篇中,我们将学习如何“写入”数据到Excel文件中,这对于自动化处理数据来说,是一项非常实用的技能。

安装和导入Pandas

如果你还没有安装Pandas库,可以使用以下命令进行安装:

pip install pandas openpyxl

这里需要安装openpyxl库,这是一个用于读写Excel 2010 xlsx/xlsm/xltx/xltm文件的库。

在使用该库之前,我们先导入所需的模块:

import pandas as pd

创建数据

在写数据到Excel文件之前,我们需要一些数据。我们可以从字典、列表或其他数据结构中创建一个DataFrame对象。

# 创建一个字典
data = {
    '姓名': ['张三', '李四', '王五'],
    '年龄': [25, 30, 22],
    '城市': ['北京', '上海', '广州']
}

# 将字典转换为DataFrame
df = pd.DataFrame(data)

# 显示DataFrame内容
print(df)

输出将会是:

    姓名  年龄  城市
0  张三  25  北京
1  李四  30  上海
2  王五  22  广州

写入Excel文件

现在,我们已经有了一个DataFrame,接下来我们可以将它写入一个Excel文件。这里使用to_excel方法,它非常简单易用。

# 写入Excel文件
df.to_excel('output.xlsx', sheet_name='Sheet1', index=False)

参数说明:

  • output.xlsx:这是你要保存的文件名。
  • sheet_name:指定工作表的名称。
  • index:设置为False表示不写入行索引。

执行上述代码后,你将在当前目录下找到一个名为output.xlsx的文件,包含了我们的数据。

追加数据到现有Excel文件

有时候,我们可能希望将数据追加到已经存在的Excel文件中。这也是使用Pandas库的一个重要功能。我们可以使用ExcelWriter来实现这一目标。

# 创建一个新的数据
new_data = {
    '姓名': ['赵六', '钱七'],
    '年龄': [28, 35],
    '城市': ['深圳', '成都']
}

new_df = pd.DataFrame(new_data)

# 追加数据到现有的Excel文件
with pd.ExcelWriter('output.xlsx', mode='a', if_sheet_exists='overlay') as writer:
    new_df.to_excel(writer, sheet_name='Sheet1', index=False, header=False, startrow=len(df) + 1)

参数说明:

  • mode='a':以追加模式打开文件。
  • if_sheet_exists='overlay':在已有工作表上进行操作。
  • header=False:追加时不写入列名。
  • startrow=len(df) + 1:指定从原数据后面继续写入。

示例:完整写入流程

以下是完整的代码示例,从创建数据到写入Excel的全过程:

import pandas as pd

# 创建初始数据
data = {
    '姓名': ['张三', '李四', '王五'],
    '年龄': [25, 30, 22],
    '城市': ['北京', '上海', '广州']
}

df = pd.DataFrame(data)

# 写数据到Excel文件
df.to_excel('output.xlsx', sheet_name='Sheet1', index=False)

# 创建新数据
new_data = {
    '姓名': ['赵六', '钱七'],
    '年龄': [28, 35],
    '城市': ['深圳', '成都']
}

new_df = pd.DataFrame(new_data)

# 追加新数据到Excel
with pd.ExcelWriter('output.xlsx', mode='a', if_sheet_exists='overlay') as writer:
    new_df.to_excel(writer, sheet_name='Sheet1', index=False, header=False, startrow=len(df) + 1)

总结

在本节中,我们学习了如何使用Pandas库将数据写入Excel文件。通过to_excel方法和ExcelWriter类,我们可以灵活地创建新文件或将数据追加到现有文件中。接下来,我们会继续探索如何对Excel数据进行筛选与处理。在这过程中,我们将进一步巩固对Pandas库的使用。

欢迎在下一篇文章中继续与我们一起学习如何进行数据筛选与处理!