pandas实现Excel数据中某字段不同值进行自动化保存到不同sheet工作表

1 篇文章 0 订阅
1 篇文章 0 订阅

1.读取数据

#导入pandas包,安装命令:pip install pandas
import pandas as pd
#path0指定Excel文件路径位置 sheetName指工作表名
table = pd.read_excel('path0',sheet_name='sheetName') 

2.获取以某字段区分

#获取列的值,'列名称'根据自己需求填写
columns= table ['列名称'].values
#工作表新增列并且以该列设置为航索引
table ['indexs'] = columns
table .set_index('indexs',inplace=True) #inplace=True更改原数据
#去重字段区分的值
column= set(columns)

3.处理数据并且保存到不同的sheet工作表

#对原sheet追加内容,通过读取该sheet内容然后使用pd.concat合并数据最后再写入
#添加引擎writer,path1指定新文件路径,mode='w'为写入模式
writer = pd.ExcelWriter('path1',mode='w')
#数据处理
for col in column:
    #以like=col筛选数据,axis=0指x轴  或sheet = table.loc[col]
    sheet = table.filter(like=col ,axis=0) 
    #写入不同工作表,sheet_name指定工作表名称
    pd.DataFrame(sheet).to_excel(writer,sheet_name=col,index=False) 

4.保存文件并关闭

writer.save() #保存文件
writer.close() #关闭引擎对象

5.完整代码

#导入pandas包,安装命令:pip install pandas
import pandas as pd
#path0指定Excel文件路径位置 sheetName指工作表名
table = pd.read_excel('path0',sheet_name='sheetName') 
#获取列的值,'列名称'根据自己需求填写
columns= table ['列名称'].values
#工作表新增列并且以该列设置为航索引
table ['indexs'] = columns
table .set_index('indexs',inplace=True) #inplace=True更改原数据
#去重字段区分的值
column= set(columns)
#添加引擎writer,path1指定新文件路径,mode='w'为写入模式
writer = pd.ExcelWriter('path1',mode='w')
#数据处理
for col in column:
    #以like=col筛选数据,axis=0指x轴  或sheet = table.loc[col]
    sheet = table.filter(like=col ,axis=0) 
    #写入不同工作表,sheet_name指定工作表名称
    pd.DataFrame(sheet).to_excel(writer,sheet_name=col,index=False) 
writer.save() #保存文件
writer.close() #关闭引擎对象
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

MtoSlc

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值