指定列名自动将Excel内的数据拆分为不同的Sheet(基于Python)

在Python中,可以使用pandasopenpyxlxlsxwriter库来读取Excel文件、操作数据以及将数据写入新的Excel文件中。以下是一个简单的示例,说明如何读取一个Excel文件,将指定列的数据拆分到独立的sheet中:

首先,确保安装了必要的库:

bash 复制代码
pip install pandas openpyxl xlsxwriter

然后,使用以下Python脚本:

python 复制代码
import pandas as pd

# 读取Excel文件
df = pd.read_excel('input.xlsx')

# 指定你想要拆分的列名
column_to_split = 'ColumnName'

# 创建一个Pandas Excel writer使用XlsxWriter作为引擎
with pd.ExcelWriter('output.xlsx', engine='xlsxwriter') as writer:

    # 对于指定列中的每个唯一值,创建一个新的sheet
    for value in df[column_to_split].unique():

        # 筛选出该值的所有行
        filtered_df = df[df[column_to_split] == value]
        
        # 将筛选出的数据写入sheet,sheet名为该唯一值
        # 注意Excel的sheet名有长度限制,并且不能包含某些字符
        sheet_name = str(value)[:31]
        filtered_df.to_excel(writer, sheet_name=sheet_name, index=False)

print('文件拆分完毕')

在这个脚本中,你需要替换'input.xlsx'为你的输入文件名,'ColumnName'为你想要拆分的列名,以及'output.xlsx'为你想要保存的输出文件名。

这段代码会读取指定的Excel文件,找到你想要拆分的列,然后根据这一列的每个唯一值创建一个新的sheet,并将对应的行写入相应的sheet中,最后保存为一个新的Excel文件。

相关推荐
じ☆ve 清风°17 分钟前
JavaScript 原型与原型链:深入理解 __proto__ 和 prototype 的由来与关系
开发语言·javascript·原型模式
程序员的世界你不懂4 小时前
Appium+python自动化(八)- 认识Appium- 下章
python·appium·自动化
_r0bin_5 小时前
前端面试准备-7
开发语言·前端·javascript·fetch·跨域·class
zhang98800005 小时前
JavaScript 核心原理深度解析-不停留于表面的VUE等的使用!
开发语言·javascript·vue.js
恸流失5 小时前
DJango项目
后端·python·django
Abigail_chow5 小时前
EXCEL如何快速批量给两字姓名中间加空格
windows·microsoft·excel·学习方法·政务
Julyyyyyyyyyyy6 小时前
【软件测试】web自动化:Pycharm+Selenium+Firefox(一)
python·selenium·pycharm·自动化
Fanxt_Ja7 小时前
【JVM】三色标记法原理
java·开发语言·jvm·算法
蓝婷儿7 小时前
6个月Python学习计划 Day 15 - 函数式编程、高阶函数、生成器/迭代器
开发语言·python·学习
love530love7 小时前
【笔记】在 MSYS2(MINGW64)中正确安装 Rust
运维·开发语言·人工智能·windows·笔记·python·rust