首页 > 解决方案 > 使用 Python 根据列值自动拆分 Excel 工作表

问题描述

考虑一下我有一个巨大的 Excel 表,其中包含多个列和条目。但是,存在一个包含布尔值 0 和 1 的特定列 (COLUMN A)。现在我希望根据 COLUMN A 的值将我的父 excel 工作表拆分为 2 个工作表。我已经知道这可以使用 VBA 代码来完成。但是,我想在 python 上试试这个。我的想法是我们可以遍历所述列值,如果满足条件,则拿起整行并将其写入新工作表。我正在学习语言,可以使用 numpy 和 pandas 来创建线性回归模型等。我想从事这个“个人项目”。如果有人能帮助我,提供一些提示或开始的东西,我会很高兴。谢谢你。

标签: pythonexcelautomation

解决方案


我会怎么做:

  1. 将完整的 excel 表读入 pandas 数据框 df = pd.from_excel("file_name.xlsx")

  2. 按该列中的值过滤数据框

df1 = df[df["COLUMN A"]==1]
df0 = df[df["COLUMN A"]==0]
  1. 使用 pandas ExcelWriter 将这些新数据框读取到新的 excel 工作簿或现有工作簿上的新 excel 工作表:https ://pandas.pydata.org/pandas-docs/stable/reference/api/pandas.ExcelWriter.html

不要忘记处理 A 列中缺失的数据(如果有)。

我只是一名学生,所以也许有更有效的方法可以做到这一点,但我在本科研究中使用了大量的 pandas,这就是我会做的。祝你好运:)


推荐阅读