如何使用Python Pandas 在 Excel 中过滤数据并将其另存为新文件?
先决条件: Python Pandas
Pandas主要用于更轻松地导入和分析数据。 Pandas 速度快,为用户提供高性能和生产力。
在本文中,我们尝试过滤 Excel 工作表的数据,并将过滤后的数据另存为新的 Excel 文件。
注意:您可以单击此文件名下载此工作表 datasets.xlsx
使用的 Excel 表:
在这个 excel 表中,我们在 Species 列中有三个类别-
- 濑户
- 杂色
- 弗吉尼亚
现在我们的目标是按物种类别过滤这些数据,并将这些过滤后的数据保存在不同的工作表中,文件名 =species.subcategory 名称,即在执行代码后,我们将获得以下名称的三个文件-
- Setosa.xlsx
- Versicolor.xlsx
- 弗吉尼亚.xlsx
下面是实现。
# Python code to filter and save the
# data with different file names
import pandas
data = pandas.read_excel("datasets.xlsx")
speciesdata = data["Species"].unique()
for i in speciesdata:
a = data[data["Species"].str.contains(i)]
a.to_excel(i+".xlsx")
输出:
解释:
- 首先,我们导入了 Pandas 库。
- 然后我们在数据对象中加载了data.xlsx excel文件。
- 为了从该物种列中获取唯一值,我们使用了
unique()
函数。为了检查 Species 列中的唯一值,我们在 speciesdata 对象中调用了 unique()。 - 然后我们将迭代speciesdata 对象,因为我们将一一存储Species 列的唯一值(即Setosa、Versicolor、Virginica)。
- 在对象“a”中,我们过滤掉与
Species.speciesdata
匹配的数据,即在每个迭代对象中,a 将存储三种不同类型的数据,即 Setosa 类型的数据,然后是 Versicolor 类型的数据,最后是 Virginica 类型的数据. - 现在将过滤后的数据一一保存到我们使用 to_excel函数的 excel 文件中,其中文件将以物种数据名称保存。