使用 Python Pandas 写入 Excel 文件

如果您和我一样,就会喜欢寻找新的、有趣的数据处理方法。还有什么比在 Excel 中处理数据更有趣的呢?

Excel 是处理数据的强大工具,Python Pandas 让它变得更加容易。在这篇文章中,我将向您展示如何使用 Python Pandas 将数据写入 Excel 文件。

我将首先向您展示如何安装 Pandas 并创建 DataFrame。然后我将向您展示如何使用 Pandas 将数据写入 Excel 文件。

另请阅读:xlrd 模块 – 如何在 Python 中处理 Excel 文件?

什么是 Excel 文件?

Excel 文件是一种电子表格文件,包含行和列中的一些单元格(表格视图),可以帮助排列、计算、排序和管理数据。

电子表格中的数据可以是数字、文本、公式、超链接、函数等。XLS 文件将数据存储为二进制流。它只能由最流行的 MS Excel 或其他电子表格程序创建。文件格式 .xlsx 始终表示其本身是一个 Excel 文件。

下图描绘了由 MS-excel 程序创建的 Excel 文件:

MS Excel 的 Excel 文件 1

熊猫模块

它是 Python 中的一个开源库或模块,提供一些内置的数据结构和数据分析工具。pandas 模块的一些主要功能如下。

  • 它提供了高效、快速的数据管理和访问方式。
  • 它有能力处理集成到其库中的丢失数据。
  • 它有一些独特的技术来索引其数据。
  • 它提供了各种各样的内置工具,可以帮助我们读取和写入数据。 
  • 它可以支持 JSON、CSV、HDF5 和 Excel 文件。
  • 它非常负责合并各种数据集。
  • 它使我们能够访问其他有用的库,例如 MatPlotLib 和 NumPy。
  • 它允许用户对数据集实施各种数学运算。

安装 Python Pandas

在开始阅读本文之前,请确保您已在计算机上安装了此模块。您可以在命令提示符下通过以下命令下载此模块。

pip install pandas

您可以按如下方式安装 pandas 模块。

安装熊猫模块2

我们将在本文中使用另一个模块,让我们也了解一下。

安装 openpyxl 模块

Openpyxl是一个用于读取或写入 Excel 文件的 Python 库或模块。需要安装此模块才能使用某些方法,例如 load_workbook(),否则,我们无法使用这些方法,它会抛出 error让我们使用命令提示符安装此模块。

C:\Users\pc> pip install openpyxl

上面的代码片段将安装我们的 openpyxl模块。

安装 Openpyxl 模块

将单个电子表格写入 Excel 文件

我们首先将其转换为 Pandas Dataframe,然后将 Dataframe 写入 Excel。要将 Pandas DataFrame 导出为 Excel 文件(即 .xlsx、.xls 文件),我们将使用该  to_excel() 方法。

请遵循以下代码片段:

>>> import pandas as pd
>>> import openpyxl
 
>>> df = pd.DataFrame([['Hi', 'Hello', 'Hey'], ['Nandini', 'Rupali', 'Malina'], ['Ram','Shyam', 'Babu']], index=['one', 'two', 'three'], columns=['a', 'b', 'c'])

如果我们打印上面的数据框,我们可以得到如下结果。

>>> print(df)
             a       b       c
one         Hi   Hello     Hey
two    Nandini  Rupali  Malina
three      Ram   Shyam    Babu
>>>

现在我们将使用下面的代码片段将上述数据框导出到 Excel 文件。

df.to_excel('new_excel.xlsx', sheet_name='new_sheet_name')

上面的代码片段将自动在我们的 PC 文件夹中创建一个 .xlsx 文件。

将多个电子表格写入 Excel 文件

让我们创建另一个数据框。

df2 = pd.DataFrame([[11, 21, 31], [12, 22, 32], [31, 32, 33]], index=['one', 'two', 'three'], columns=['a', 'b', 'c'])

现在我们将 df 和 df2 数据帧导出到 new_excel 文件中。请按照下面的代码片段操作

with pd.ExcelWriter('new_excel.xlsx') as writer:
    df.to_excel(writer, sheet_name='sheet1')
    df2.to_excel(writer, sheet_name='sheet2')

它将创建一个包含两张幻灯片的 Excel 文件,如下所示。

表 1
表2

概括

在本文中,我们介绍了使用 Python 将数据写入 Excel 文件的 2 个示例。我们讨论了两个流行的模块以实现适当的输出。希望您喜欢这个快速演示。